GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
però al posto di scaricare l'immagine (che puoi fare usando inet) e di visualizzarla fai prima a visualizzarla direttamente dal webbrowser, e avendo l'utl non dovresti avere problemi a fare un webbrowser.Navigate ... poi a me da errore, ma questo non dipende dal codice ma dal webbrowser, magari a te funziona
|
|
osi94 (Normal User)
Rookie
Messaggi: 45
Iscritto: 25/12/2009
|
Postato originariamente da GrG:
però al posto di scaricare l'immagine (che puoi fare usando inet) e di visualizzarla fai prima a visualizzarla direttamente dal webbrowser, e avendo l'utl non dovresti avere problemi a fare un webbrowser.Navigate ... poi a me da errore, ma questo non dipende dal codice ma dal webbrowser, magari a te funziona |
Non posso fare Webbrowser2.Navigate "www.altervista.it/......jpg" perchè il captcha è dinamico.
Mi posti il codice per scaricare direttamente l'immagine? Mi accontento di questo, dato che non ci sono altre soluzioni.
Grazie |
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
invece lo puoi fare, dalle prove che ho fatto il codice rimane sempre lo stesso
|
|
osi94 (Normal User)
Rookie
Messaggi: 45
Iscritto: 25/12/2009
|
Postato originariamente da GrG:
invece lo puoi fare, dalle prove che ho fatto il codice rimane sempre lo stesso |
Io ho provato e mi cambia , comunque mi dai il codice per scaricare l'immagine?
Grazie |
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Per scaricare l'immagine devi usare inet, ecco una sub:
Codice sorgente - presumibilmente VB.NET |
Public Sub DownloadBinaryFile(strSourceFile As String, strDestinationFile As String) Dim bytInputData() As Byte Dim IntNumberFile As Integer bytInputData() = Inet1.OpenURL(strSourceFile, icByteArray) IntNumberFile = FreeFile Open strDestinationFile For Binary As #IntNumberFile Put #IntNumberFile, , bytInputData() Close #IntNumberFile End Sub
|
Ma comunque (dalle prove che ho fatto io) l'immagine cambia lo stesso..
Invece ho notato che quando carico la pagina con l'activex webbrowser e ricavo un certo url se mi collego a questo url usando sempre l'activex webbrowser (ma un'altro, cioè uan "copia") il codice è sempre quello, e siccome il webbrowser si basa su IE anche se apro IE e digito quell'url il codice non cambia, ma se lo metto su Mozilla Firefox il codice cambia, ma se apro un'altra scheda e rivado a quel'url o se riaggiorno la pagina anche se diverso da quello di IE rimane sempre lo stesso (e non è la cache, perchè quella l'ho sempre svuotata nel fare le prove) quindi secondo me devi in qualche modo sfruttare questa cosa qui...
In poche parole devi studiarti il funzionamento di quel captcha e capire come copiarlo...
In questa discussione un altro utente aveva un problema simile al tuo...
http://forum.html.it/forum/showthread/t-925632.html
|
|
osi94 (Normal User)
Rookie
Messaggi: 45
Iscritto: 25/12/2009
|
Postato originariamente da GrG:
Per scaricare l'immagine devi usare inet, ecco una sub:
Codice sorgente - presumibilmente VB.NET |
Public Sub DownloadBinaryFile(strSourceFile As String, strDestinationFile As String) Dim bytInputData() As Byte Dim IntNumberFile As Integer bytInputData() = Inet1.OpenURL(strSourceFile, icByteArray) IntNumberFile = FreeFile Open strDestinationFile For Binary As #IntNumberFile Put #IntNumberFile, , bytInputData() Close #IntNumberFile End Sub
|
Ma comunque (dalle prove che ho fatto io) l'immagine cambia lo stesso..
Invece ho notato che quando carico la pagina con l'activex webbrowser e ricavo un certo url se mi collego a questo url usando sempre l'activex webbrowser (ma un'altro, cioè uan "copia") il codice è sempre quello, e siccome il webbrowser si basa su IE anche se apro IE e digito quell'url il codice non cambia, ma se lo metto su Mozilla Firefox il codice cambia, ma se apro un'altra scheda e rivado a quel'url o se riaggiorno la pagina anche se diverso da quello di IE rimane sempre lo stesso (e non è la cache, perchè quella l'ho sempre svuotata nel fare le prove) quindi secondo me devi in qualche modo sfruttare questa cosa qui...
In poche parole devi studiarti il funzionamento di quel captcha e capire come copiarlo...
In questa discussione un altro utente aveva un problema simile al tuo...
http://forum.html.it/forum/showthread/t-925632.html |
Grazie.
Ti rompo le scatole un ultima volta:
Con questo codice di prova mi scarica l'immagine direttamente sul desktop :
DownloadFile(" http://www.google.it/intl/it_it/images/logo.gif", "C:\Documents and Settings\All Users\Desktop\google.jpg") e per scaricare un immagine che è nel webbrowser, come potrei fare?
Grazie |
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Fai così:
DownloadFile(WebBrowser1.Document.getElementById("code_img").src, "C:\Documents and Settings\All Users\Desktop\google.jpg")
oppure c'è un altro metodo (che è equivalente) ... ossia usando: webbrowser1.document.images(x).src dove x è il numero dell'immagine nel tuo caso l'immagine captcha si trova al "6° posto" cioè il suo numero è 6 quindi puoi anche usare:
DownloadFile(WebBrowser1.Document.images(6).src, "C:\Documents and Settings\All Users\Desktop\google.jpg")
|
|
osi94 (Normal User)
Rookie
Messaggi: 45
Iscritto: 25/12/2009
|
Postato originariamente da GrG:
Fai così:
DownloadFile(WebBrowser1.Document.getElementById("code_img").src, "C:\Documents and Settings\All Users\Desktop\google.jpg")
oppure c'è un altro metodo (che è equivalente) ... ossia usando: webbrowser1.document.images(x).src dove x è il numero dell'immagine nel tuo caso l'immagine captcha si trova al "6° posto" cioè il suo numero è 6 quindi puoi anche usare:
DownloadFile(WebBrowser1.Document.images(6).src, "C:\Documents and Settings\All Users\Desktop\google.jpg")
|
Il primo metodo l'avevo già provato e mi dice "Variabile non definita" evidenziando WebBrowser1.
Edit: Grazie, ho risolto mettendo: Form1.Webbrowser1......
Ri-Edit: Mi evidenzia tutta la stringa e mi dice "Proprietà o metodo non supportati dall'oggetto"
Ultima modifica effettuata da osi94 il 27/12/2009 alle 23:01 |
|