Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    4

    Dati dal web

    Salve, è la mia prima volta, per cui se sbaglio correggetemi.

    Avrei bisogno di prelevare alcuni dati da una pagina web, sto usando VB6 e purtroppo non conosco l'HTML.

    Qualcuno può aiutarmi ?

    Grazie !

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Benvenuto.
    Ti consiglio subito di dare un'occhiata al Regolamento.
    Il linguaggio utilizzato va specificato anche nel titolo.
    La sezione corretta per VB6 è il sub-forum VisualBasic e .Net Framework.


    Per stavolta, visto che sei nuovo, sistemo io tutto quanto.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    4

    [VB6] prelevare dati dal web

    Grazie !

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Io suggerisco anche di fare una ricerca, visto che l'argomento viene trattato spesso (che sia una pagina Web, un file di cui farei il download o qualsiasi altra cosa).
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    4

    [VB6] prelevare dati dal web

    Grazie, ho provato ma non ho trovato niente.
    Credo però di non essermi spiegato bene, faccio un esempio di quello che vorrei fare:

    supponiamo che nel mio programma mi interessi sapere la temperature di TORINO,
    Vorrei aprire una pagina web che riporta le temperature delle città e senza visualizzare il sito vorrei cercare (ad esempio leggendo l'HTML ) la parola "TORINO" e la relativa temperatura prelevare quste due informazioni e copiarle in due etichette nel mio form.

    Spero sia chiaro, grazie IZ1GIZ

  6. #6

    Re: [VB6] prelevare dati dal web

    Originariamente inviato da Giz
    Grazie, ho provato ma non ho trovato niente.
    Credo però di non essermi spiegato bene, faccio un esempio di quello che vorrei fare:

    supponiamo che nel mio programma mi interessi sapere la temperature di TORINO,
    Vorrei aprire una pagina web che riporta le temperature delle città e senza visualizzare il sito vorrei cercare (ad esempio leggendo l'HTML ) la parola "TORINO" e la relativa temperatura prelevare quste due informazioni e copiarle in due etichette nel mio form.

    Spero sia chiaro, grazie IZ1GIZ
    Puoi fare cosi':

    1) Cerchi una pagina web che ti dia l'informazione che ti serve, e ne memorizzi l'URL completo;

    2) In un progetto VB, utilizzi il controllo WebBrowser: e' sotto il nome Microsoft Internet Controls (leggiti un po' di documentazione sul sito MS, al link http://msdn.microsoft.com/workshop/b...reflist_vb.asp

    3) Col WebBrowser (inposta la proprieta' Silent a True !) raggiungi la pagina web, ne estrai il contenuto di puro testo con: WebBrowser1.Document.body.innertext, dopodiche' devi cercare di estrarre la singola informazione (la temperatura) dal testo dell'intera pagina (ad esempio cercando prima una stringa fissa sicuramente presente nella pagina, come ad esempio "Località: Torino", e proseguendo la ricerca da quel punto....)

    Ovviamente la "logica" della ricerca varia in funzione dell'organizzazione della pagina web, quindi se dopo qualche tempo il sito viene modificato nella grafica o nel contenuto, si dovra' modificare il programma...



    Col VB6, creando un nuovo progetto e aggiungendo un controllo Webbrowser e un CommandButton, il codice puo' essere, ad esempio, il seguente:
    codice:
    Option Explicit
    Dim fine As Boolean
    
    Private Sub Command1_Click()
       Dim testo As String, p As Integer, cerca As String, i As Integer
       Dim min As Integer, max As Integer
       With WebBrowser1
          .Silent = True
          .Navigate "http://meteo.ansa.it/Regione.asp?Regione=12&Comune=001272"
          Do
             DoEvents
          Loop Until fine
          testo = .Document.body.innertext    'qui c'e' l'intera pagina web in forma di puro testo...
       End With
       
       'ora devi cercare SOLO quello che t'interessa....
       cerca = "Torino"
       p = InStr(1, testo, cerca)
       If p Then
          p = p + Len(cerca)   ' da qui ci sono le temperature min e max.
          i = 1
          While Mid$(testo, p + i, 1) Like "#"   'una cifra
             i = i + 1
          Wend
          min = Val(Mid$(testo, p, i))
          p = p + i
          i = 1
          While Mid$(testo, p + i, 1) Like "#"   'una cifra
             i = i + 1
          Wend
          max = Val(Mid$(testo, p, i))
          MsgBox cerca & " :   minima " & min & ",  massima " & max
       Else
          MsgBox "Stringa: " & cerca & "  NON TROVATA", vbCritical
       End If
    End Sub
    
    Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
       fine = True
    End Sub
    Prova un po'.... ricorda pero' che questo codice funziona cosi' com'e' SOLO su quell'URL, se vuoi ottenere i dati da un'altra pagina web dovrai modificare la parte di "estrazione" delle temperature...

    Ciao !


    P.S.: se non vuoi mostrare il controllo WebBrowser, NON puoi fare Visible=False, perche' il WB richiede di essere visibile per funzionare (ed avere Internet Explorer installato !), ma puoi impostare la larghezza del controllo a zero.
    IceCube_HT (VB6 fan Club)

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    4

    [VB6] prelevare dati dal web

    Grazie, non mancherò di provare.

    Giz

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    puoi usare WinHttp per effettuare una richiesta web e recuperare la pagina che ti interessa, molto più seplice immediato e senza controlli come nel caso del web browser.

    Dovresti poter anche usa MsHtml per creare un documento html partendo da una pagina web, a quel punto accedere agli elementi della pagina per recuperare cio' che ti interessa è piuttosto semplice.
    Ans.

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.