Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [VB.NET] Ricerca link in controllo WebBrowser quando il documento è caricato

    sono novizio sia del forum che della programmazione in vbnet.
    spero che qualcuno possa illuminarmi su un problema sicuramente banale.
    Vorrei tramite il controllo webbrowser automatizzare l'estrazione di informazioni da un sito web.
    Per poterlo fare devo eseguire un login e selezionare dei link sulla successiva pagina.

    per fare questo ho inserito nell'evento documentcompleted la compilazione della maschera di login
    e fin qui tutto ok...
    effettuato il login cerco il link che mi interessa tramite un ciclo...ma non va... credo che questo dipenda dal fatto che si debba generare di nuovo l'evento documentcompleted prima di farlo...e qui mi perdo....qualcuno può spiegarmi come devo ragionare ...questo è il codice che ho scritto:


    Sub WebBrowser1DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs)

    WebBrowser1.Document.DomDocument.Forms(0).item("us er").Value = "miauser"
    WebBrowser1.Document.DomDocument.Forms(0).item("pa ss").Value = "miapass"
    WebBrowser1.Document.DomDocument.Forms(0).submit



    Dim L As Object
    While webBrowser1.ReadyState.Complete
    For Each L In WebBrowser1.Document.Links
    If L.InnerText = "STATISTICHE" Then
    L.InvokeMember("Click")
    End If
    Next
    End While
    End Sub

  2. #2
    Nessun aiuto?

  3. #3
    dalle mie prove il codice relativo al click sul link funziona come anche quello di compilazione form....

    ho fatto dei test..riesco a selezionare il link da una prima pagina(amministratore) che mi indirizza ad un form password..compilo in automatico il relativo form che a sua volta mi indirizza ad una terza pagina...nella mia prova quella di google;...qui tento di inserire un testo di ricerca ma quello che ottengo è solo vederlo nella text di google ma senza che venga eseguito il submit (come se la pagina non fosse stata completamente caricata)....ma dove sbaglio?

    Sub WebBrowser1DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs)

    Dim Links As Object



    For Each Links In WebBrowser1.Document.Links
    If Links.InnerText = "Amministratore" Then
    Links.InvokeMember("Click")
    End If
    Next

    WebBrowser1.Document.DomDocument.Forms(0).item("us er_cli").Value = "claudio"
    WebBrowser1.Document.DomDocument.Forms(0).item("pa ss_cli").Value = "prova"
    WebBrowser1.Document.DomDocument.Forms(0).submit



    WebBrowser1.Navigate("http://www.google.it")

    While webBrowser1.ReadyState.Complete
    WebBrowser1.Document.DomDocument.Forms(0).item("q" ).Value = "Testo di prova"
    WebBrowser1.Document.DomDocument.Forms(0).submit
    end while
    end sub

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    L'evento DocumentCompleted viene chiamato per ogni pagina (e se nella pagina ci sono dei frame, per ogni frame) che viene caricata.

    Se tu utilizzi sempre lo stesso codice senza distinguere lo stato attuale della navigazione (vedi i parametri passati all'evento), è ovvio che il comportamento del codice sarà senza senso.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    abbi pazienza ma sono proprio all'abc...
    non capisco...con la prima parte di codice riesco a selezionare il link amministratore...sintomo che l'evento completed per la prima pagina è completato....
    vengo dirottato alla pagina di login e anche qui il form si popola il submit avviene...quindi presumo che anche per questa seconda pagina l'evento document completed ci sia stato....poi col navigate passo alla terza pagina(google) e qui tutto si ferma sintomo che lo stato attuale non è document completed....come faccio a intercettare lo stato attuale (io pensavo di poterlo fare con la condizione while che ho inserito)?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.