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

    [VB6] - Autenticarsi in una pagina web

    Buongiorno a tutti,

    ho il seguente problema:

    ho un listino web al quale posso accedere tramite normale browser, dopo essermi autenticato con la mia user id e la mia password.

    Vorrei fare un programma in VB6 che si logghi in automatico e che mi scarichi quel listino in un database access.

    Sono in grado di fare tutto, tranne il primo passo... ovvero l'autenticazione via programma alla pagina web del sito in questione.

    Qualcuno di voi sa come posso "simulare" la navigazione e l'autenticazione, da programma VB6 ?

    Grazie
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  2. #2
    MA com'è l'autenticazione online??

  3. #3
    Dunque, ho in parte risolto, utilizzando la libreria

    Microsft HTML Object Library e Microsoft Internet Controls

    codice:
     Dim d As IHTMLDocument3
     Dim el As IHTMLElement
        
    
     WebBrowser1.navigate Text1.Text
        
        'attende il caricamento della pagina
        Do Until WebBrowser1.readyState = READYSTATE_COMPLETE
            DoEvents
        Loop
        
    
        'variabile documento
        Set d = WebBrowser1.document
        
        'imposta username
        Set el = d.getElementsByName("user")(0)
      
        el.setAttribute "value", "prova"
    
        
        
        'imposta password
        Set el = d.getElementsByName("passwd")(0)
        el.setAttribute "value", "miapassword"
        
            
        'pulsante di invio
        Set el = d.getElementsByName("invio")(0)
        el.Click
    il problema è che sul sito che mi interessa non funziona.
    Mentre su (per esempio) libero.it, funziona benissimo

    (chiaramente cambio nel programma i valori dei Name Tag a seconda del sito.

    Ho provato su libero perchè questo codice l'ho visto su un altro post, e chi lo ha postato faceva la prova proprio con libero (e infatti funziona). Mentre con il sito che interessa a me... non va!

    ho contrallato e per il sito che mi interessa, i valori dei tag name sono corretti. Eppure è come se il programma non li trovasse...

    l'errore che mi da è subito all'inserimento della username:

    Run-time error '91':

    Object variable or With block variable not set
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  4. #4
    Originariamente inviato da Guido8975
    MA com'è l'autenticazione online??
    è con un

    <input type = "text" name="user"> (per la userid)

    un
    <input type = "password" name="passwd"> (per la password)

    e un
    <input type = "submit" name="invio"> (per il tasto di invio)

    il tutto in una form con method "post"
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  5. #5
    ok, ho superato anche il problema di prima.

    era colpa del fatto che la pagina conteneva frames, e quindi la ruotine:

    'attende il caricamento della pagina
    Do Until WebBrowser1.readyState = READYSTATE_COMPLETE
    DoEvents
    Loop

    sballava pensando che la pagina fosse caricata, quando invece mancava ancora un frame (quindi le righe di codice successive venivano eseguite prima che di fatto il documento fosse pronto).




    risolto questo punto... mi manca l'ultima parte.

    come faccio per copiare in text1.text (per esempio), il codice html della pagina visualizzata dal browser nel programma? (l'equivalente di "visualizza HTML" con Internet Explorer)
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  6. #6
    ok, risolto anche l'ultimo problema.

    così:

    Text8.Text = WebBrowser1.document.documentElement.innerHTML


    nel txt8.text ci mette il codice sorgente della pagina html che webbrowser1.navigate ha navigato.
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

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 © 2025 vBulletin Solutions, Inc. All rights reserved.