Forum - C# / VB.NET
- [VB.NET 2008] Previsioni del tempo! - Pagina 2
Pagine: [ 1 2 3 ]
|
Molin Mauro (Member )
Rookie
Messaggi: 47
Iscritto: 26/06/2009
Ok, ora non da errori ma come faccio a ottenere le info che mi servono?? Cosa vuol dire splittare??
GoLDBeRG (Ex-Member)
Expert
Messaggi: 331
Iscritto: 19/12/2005
togli o sposti parti di testo che non ti servono devi giocare un po con le stringhe per prendere quello che vuoi
Molin Mauro (Member )
Rookie
Messaggi: 47
Iscritto: 26/06/2009
Postato originariamente da GoLDBeRG :
togli o sposti parti di testo che non ti servono devi giocare un po con le stringhe per prendere quello che vuoi
Grazie! Ci proverò! Speravo di trovare qualcosa di più semplice come un riferimento web ma vabbè. Grazie a tutti!
Il Totem (Admin )
Guru^2
Messaggi: 3635
Iscritto: 24/01/2006
Ho sbagliato il nome, quella era solo la versione precedente. Il programma è the Agent, e il codice è questo:
Codice sorgente - presumibilmente VB.NET
'Naviga sulla pagina del meteo contraddistinta dall'indice selezionato
Private Sub imgMeteo_Click( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles imgMeteo.Click
WB.Navigate ( "http://it.weather.yahoo.com/ITXX/ITXX" + CInt ( Options.Meteo ) .ToString .PadLeft ( 4 , "0" ) + "/index_c.html" )
End Sub
'Cerca nella pagina le informzioni
Private Sub WB_DocumentCompleted( ByVal sender As Object , ByVal e As WebBrowserDocumentCompletedEventArgs) Handles WB.DocumentCompleted
Dim Html As String = WB.DocumentText
Dim Previsione, Alba, Tramonto, Umi As String
Dim Max, Min, Vento, Condensazione, Visib As String
Previsione = SubStr( Html, "width=52 height=52 alt=" + Chr ( 34) , Chr ( 34 ) + ">" )
Max = SubStr( Html, "Massime</small> <b>" , "°" )
Min = SubStr( Html, "Minime</small><b> " , "°" )
If Options.Meteo_Detailed Then
Vento = SubStr( Html, "Vento:</font></td><td><font size=-1>" , "</font>" )
Visib = SubStr( Html, "Visibilità:</font></td><td><font size=-1>" , "</font>" )
Condensazione = SubStr( Html, "Punto di condensazione:</font></td><td><font size=-1>" , "°" )
Alba = SubStr( Html, "Alba:</font></td><td><font size=-1>" , "</font>" )
Tramonto = SubStr( Html, "Tramonto</font></td><td><font size=-1>" , "</font>" )
'Umidità e Visibilità generano errori nella ricerca, forse a causa dei caratteri 'à'
Dim Start_Index As Int32 = Html.IndexOf ( "Umidit" ) + "Umidità:</font></td><td><font size=-1>" .Length
Dim End_Index As Int32 = Html.IndexOf ( "</font>" , Start_Index)
Umi = Html.Substring ( Start_Index, End_Index - Start_Index)
Start_Index = Html.IndexOf ( "Visibilit" ) + "Visibilità:</font></td><td><font size=-1>" .Length
End_Index = Html.IndexOf ( "</font>" , Start_Index)
Visib = Html.Substring ( Start_Index, End_Index - Start_Index)
Umi = Umi.Replace ( "%" , " per cento" )
Vento = Vento.Replace ( " " , " " )
Vento = Vento.Replace ( "km/h" , "chilometri orari" )
Vento = Vento.Replace ( "/" , " a " )
If Vento.Contains ( "-" ) Then
Vento = Vento.Replace ( "N" , "Nord" )
Vento = Vento.Replace ( "S" , "Sud" )
Vento = Vento.Replace ( "O" , "Ovest" )
Vento = Vento.Replace ( "E" , "Est" )
End If
Vento = "verso " + Vento
Visib = Visib.Replace ( " " , " " )
Visib = Visib.Replace ( "km" , "chilometri" )
Condensazione = Condensazione + " gradi"
Alba = Alba.Replace ( ":" , " e " ) + " minuti"
Tramonto = Tramonto.Replace ( ":" , " e " ) + " minuti"
End If
With Agente
.Play ( "Read" )
.Speak ( "Previsioni di oggi" )
.Speak ( Previsione + ", con una temperatura massima di " + Max + " gradi e una minima di " + Min + " gradi." )
If Options.Meteo_Detailed Then
.Speak ( "Informazioni aggiuntive" )
.Speak ( "Ora dell'alba: " + Alba + "." )
.Speak ( "Ora del tramonto: " + Tramonto + "." )
.Speak ( "Il punto di condensazione è di " + Condensazione + ", con un'umidità del " + Umi + ", mentre la visibilità è di " + Visib + "." )
.Speak ( "Tira un vento " + Vento + "." )
End If
End With
WB.Stop ( )
End Sub
Molin Mauro (Member )
Rookie
Messaggi: 47
Iscritto: 26/06/2009
Postato originariamente da Il Totem :
Ho sbagliato il nome, quella era solo la versione precedente. Il programma è the Agent, e il codice è questo:
Codice sorgente - presumibilmente VB.NET
'Naviga sulla pagina del meteo contraddistinta dall'indice selezionato
Private Sub imgMeteo_Click( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles imgMeteo.Click
WB.Navigate ( "http://it.weather.yahoo.com/ITXX/ITXX" + CInt ( Options.Meteo ) .ToString .PadLeft ( 4 , "0" ) + "/index_c.html" )
End Sub
'Cerca nella pagina le informzioni
Private Sub WB_DocumentCompleted( ByVal sender As Object , ByVal e As WebBrowserDocumentCompletedEventArgs) Handles WB.DocumentCompleted
Dim Html As String = WB.DocumentText
Dim Previsione, Alba, Tramonto, Umi As String
Dim Max, Min, Vento, Condensazione, Visib As String
Previsione = SubStr( Html, "width=52 height=52 alt=" + Chr ( 34) , Chr ( 34 ) + ">" )
Max = SubStr( Html, "Massime</small> <b>" , "°" )
Min = SubStr( Html, "Minime</small><b> " , "°" )
If Options.Meteo_Detailed Then
Vento = SubStr( Html, "Vento:</font></td><td><font size=-1>" , "</font>" )
Visib = SubStr( Html, "Visibilità:</font></td><td><font size=-1>" , "</font>" )
Condensazione = SubStr( Html, "Punto di condensazione:</font></td><td><font size=-1>" , "°" )
Alba = SubStr( Html, "Alba:</font></td><td><font size=-1>" , "</font>" )
Tramonto = SubStr( Html, "Tramonto</font></td><td><font size=-1>" , "</font>" )
'Umidità e Visibilità generano errori nella ricerca, forse a causa dei caratteri 'à'
Dim Start_Index As Int32 = Html.IndexOf ( "Umidit" ) + "Umidità:</font></td><td><font size=-1>" .Length
Dim End_Index As Int32 = Html.IndexOf ( "</font>" , Start_Index)
Umi = Html.Substring ( Start_Index, End_Index - Start_Index)
Start_Index = Html.IndexOf ( "Visibilit" ) + "Visibilità:</font></td><td><font size=-1>" .Length
End_Index = Html.IndexOf ( "</font>" , Start_Index)
Visib = Html.Substring ( Start_Index, End_Index - Start_Index)
Umi = Umi.Replace ( "%" , " per cento" )
Vento = Vento.Replace ( " " , " " )
Vento = Vento.Replace ( "km/h" , "chilometri orari" )
Vento = Vento.Replace ( "/" , " a " )
If Vento.Contains ( "-" ) Then
Vento = Vento.Replace ( "N" , "Nord" )
Vento = Vento.Replace ( "S" , "Sud" )
Vento = Vento.Replace ( "O" , "Ovest" )
Vento = Vento.Replace ( "E" , "Est" )
End If
Vento = "verso " + Vento
Visib = Visib.Replace ( " " , " " )
Visib = Visib.Replace ( "km" , "chilometri" )
Condensazione = Condensazione + " gradi"
Alba = Alba.Replace ( ":" , " e " ) + " minuti"
Tramonto = Tramonto.Replace ( ":" , " e " ) + " minuti"
End If
With Agente
.Play ( "Read" )
.Speak ( "Previsioni di oggi" )
.Speak ( Previsione + ", con una temperatura massima di " + Max + " gradi e una minima di " + Min + " gradi." )
If Options.Meteo_Detailed Then
.Speak ( "Informazioni aggiuntive" )
.Speak ( "Ora dell'alba: " + Alba + "." )
.Speak ( "Ora del tramonto: " + Tramonto + "." )
.Speak ( "Il punto di condensazione è di " + Condensazione + ", con un'umidità del " + Umi + ", mentre la visibilità è di " + Visib + "." )
.Speak ( "Tira un vento " + Vento + "." )
End If
End With
WB.Stop ( )
End Sub
ciao! wb ovviamente è un webbrowser, giusto? cosè substr?? dà errore su "Options" dice "Il riferimento a un membro non condiviso richiede un riferimento a un oggetto."!
grazie per l'interessamento!
EDIT: Non è dichiarato neanche "Agente"!
Ultima modifica effettuata da Molin Mauro il 03/07/2009 alle 14:58
Il Totem (Admin )
Guru^2
Messaggi: 3635
Iscritto: 24/01/2006
Se volevi che non ci fossero errori, allora avrei dovuto incollarti tutto il codice di tutta l'applicazione, il che non è conveniente. Ovviamente ci sono riferimenti mancanti, ma quelli a te non interessano...
Molin Mauro (Member )
Rookie
Messaggi: 47
Iscritto: 26/06/2009
Postato originariamente da Il Totem :
Se volevi che non ci fossero errori, allora avrei dovuto incollarti tutto il codice di tutta l'applicazione, il che non è conveniente. Ovviamente ci sono riferimenti mancanti, ma quelli a te non interessano...
ok!! ora ho capito. purtroppo non posso testare xk mi si è incruccato VB: non apre nessun progetto, non ne crea e nn si riesce a disinstallare!! Lo aveva già fatto e l'unica soluzione è stata formattare quindi lo proverò lunedì!
GRAZIE A TUTTI!
P.S. Ho notato che yahoo usa un codice per ogni città sull'URL. come faccio a ottenerlo per una città impostata sall'utente?
Ultima modifica effettuata da Molin Mauro il 04/07/2009 alle 10:35
evilmight (Member )
Expert
Messaggi: 206
Iscritto: 28/01/2009
Ti basta inviare delle richieste http, al web server...