Condividi:        

[EXCEL VBA] Visualizzare tutti i risultati di una pagina web

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[EXCEL VBA] Visualizzare tutti i risultati di una pagina web

Postdi mark64 » 16/12/13 10:20

Salve,
circa un anno fa con l'aiuto di alcuni utenti di questo forum avevo realizzato una macro che mi permetteva di copiare dei dati da un sito internet. Pochi giorni fa è stato aggiornato il sito e la mia macro non funziona più.
Nel sito i dati erano presenti suddivisi su più pagine, quindi semplicemente avevo inserito nella macro il link delle 7 pagine.
Adesso i dati sono sempre suddivisi su più pagine ma per poterli visualizzare è necessario cliccare in fondo alla pagina sul link "Visualizza altri risultati". Per intenderci è molti simile alla pagina di facebook, dove per visulizzare l'elenco di tutti gli amici in fondo alla pagia bisogna cliccare su "mostra tutto". Il problema è che il link della pagina rimane lo stesso, quindi non ho link diversi per le diverse pagine.
Dovrei quindi trovare un modo per viusalizzare subito all'apertura della pagina web tutti i risultati disponiibili. Cioè scrivere per esempio un ciclo loop che controlli e se sono disponibili altri dati in automatico li visualiiza tutti.

esempio:

pagina iniziale: visualizzo i primi 30 risultati;

1° dato
2° dato
............
............
30° dato

Presente in fondo alla pagina link "altri risultati". Il mio codice, visto che la pagina presenta altri dati oltre il 30°, dovrebbe in automatico cliccare sul link "altri risultati" in modo da visualizzare tutti i dati diponibili.

Per copiare i dati che mi servono utilizzo il codice:

Set myColl = IE.Document.getElementsByTagName("a")
For Each myLink In myColl
LLin = myLink.href
.....

Un dato che mi serve non riesco però più a recuperalo in questo modo. Il dato è presente come variabile di uno javascript.

<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
...
var params = new Object();
...
params.serverId = "150..."
...
</SCRIPT>

visto che non ci sono tag, e quindi non è possibile usare il metodo prima esposto, come posso gestire lo script java in modo da estrapolare un preciso dato. Nel mio caso a me servirebbe il contenuto dell variabile params.serverId.

Grazie.
mark64
Utente Junior
 
Post: 14
Iscritto il: 10/03/10 03:55

Sponsor
 

Re: [EXCEL VBA] Visualizzare tutti i risultati di una pagina

Postdi Anthony47 » 16/12/13 15:53

Queste indagini si fanno guardando il sorgente della pagina html; quindi devi indicare di quale url parliamo.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19220
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL VBA] Visualizzare tutti i risultati di una pagina

Postdi mark64 » 17/12/13 10:34

la ringrazio per il suggerimento.
linguaggio XHTML 1.0 Transitional, ho notato che ci sono pochi tag html e praticamente sono quasi tutti
<script type="text/javascript">
...
</script>

la mia richiesta, visto che voglio fare un tentativo per capire come risolvere il problema, le chiudo un suggerimento su come come bisogna gestire gli <script type="text/javascript"> in vba.

grazie
mark64
Utente Junior
 
Post: 14
Iscritto il: 10/03/10 03:55

Re: [EXCEL VBA] Visualizzare tutti i risultati di una pagina

Postdi Anthony47 » 17/12/13 22:42

La cattura dati si fa esaminando il "document" prodotto dalla pagina web, comunque sia stato prodotto; lo intercetti con IE.Document, lo esamini, decidi cosa prendere e studi come prenderlo.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19220
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL VBA] Visualizzare tutti i risultati di una pagina web":


Chi c’è in linea

Visitano il forum: Nessuno e 34 ospiti

cron