|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2782
|
[VB6] Leggere il codice html di una pagina web
Vorrei, data una pagina web, poter leggere il suo codice html come una stringa, in modo da poterci fare i miei lavoretti e le mie ricerche.. Come si fa? Grazie!
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
E' facile, basta aggiungere il componente "Microsoft Internet Transfer Control" ovvero INET ...
Ecco un esempio di una funzione che richiede l' indirizzo ed il controllo inet e restituisce una stringa col codice html: Codice:
Function Url2Html(indirizzo As String, controlloINET As Inet) As String
On Error Resume Next
Dim html As String
Dim b() As Byte
b() = controlloINET.OpenURL(indirizzo, 1)
html = ""
For i = 0 To UBound(b) - 1
html = html + Chr(b(i))
Next
Url2Html = html
Exit Function
End Function
Codice:
Text1.Text = Url2Html("http://www.mynos.com", Inet1)
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2782
|
Grazie!
Ma cosa vogliono dire queste righe? Codice:
On Error Resume Next Codice:
b() = controlloINET.OpenURL(indirizzo, 1) |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Codice:
On Error Resume Next Codice:
b() = controlloINET.OpenURL(indirizzo, 1) Il metodo OpenUrl del controllo INET restituisce il codice sorgente html della pagina come un array di byte (dove ovviamente ogni elemento dell' array è un byte della pagina). Una volta che ho l' array di byte completo, lo ciclo con un FOR e salvo nella variabile "html" tutti i byte convertiti in caratteri (perchè lui invece li salva come codice ascii ovviamente). Tutto qua ... In caso succeda qualche errore, l' istruzione "on error resume next" passa all' istruzione "exit function" così da uscire senza bloccare il programma. Le istruzioni "on error resume next" oppure "on error goto 'etichetta'" sono molto usate quando si eseguono comandi che possono generare errori come in questo caso, oppure ad esempio quando si apre una finestra di dialogo tramite un CommonDialog (in caso il file non esistesse), etc etc ...
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2782
|
E quell' "1" nel metodo OpenUrl?
Grazie, 6 molto gentile |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Il metodo OpenUrl ha questa sintassi:
OpenUrl(indirizzo as string, datatype as integer) dove indirizzo è una stringa contenente l' url della pagina da leggere, datatype è un numero (opzionale, si può omettere) che indica il tipo di dati da leggere, in questo caso il valore di default è 1, ovvero byte (codice ascii), anche se lo omettevo era come se avessi scritto 1. Sulla documentazione msdn puoi trovare gli altri valori, ma in genere si usa sempre 1 o niente (che appunto equivale a 1).
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2782
|
Ok, grazie mille! Scusa x tutte ste domande...
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Mar 2004
Città: Pisa
Messaggi: 432
|
ciao a tutti io avrei bisogno di prelevare il sorgente html di una pagina, ma in vbscript nn mi serve potreste darmi una mano in rete ho trovato qualcosa in javascript
var Pagina = "http://www.google.it"; var oHTTPReq = new XMLHttpRequest(); oHTTPReq.open("GET", Pagina, false); oHTTPReq.setRequestHeader("Content-Type", "text"); oHTTPReq.send(null); if(oHTTPReq.status == 200) var strRc=oHTTPReq.responseText; ma ho cercato di usarlo con scarsi risultati, se conoscete un modo in PHP mi rendete l'uomo piu felice del mondo.... fatemi sapere ciao e grazie
__________________
http://www.kitesurfers.it CPU Athlon 64 Venice 3200+@2500 Mhz, POV GFX 5900XT@5950 2x256 A-DATA VITESTA MOBO: AV8 μ-GURU trattative concluse con Salvoxx, Fastidio86, Morpheusss, Beppe |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:05.



















