sto usando Html Agility Pack per recuperare i dati dal sito web (demolizione)
Il mio problema è che il sito web di cui sto recuperando i dati carica alcuni contenuti dopo pochi secondi di caricamento della pagina.
QUINDI, ogni volta che sto cercando di leggere i dati particolari di particolari Div, mi sta dando nulla.
ma in var page
ho appena non ottenere la divisione reviewBox
..becuase la sua non ancora caricati.
public void FetchAllLinks(String Url)
{
Url = "http://www.tripadvisor.com/";
HtmlDocument page = new HtmlWeb().Load(Url);
var link_list= page.DocumentNode.SelectNodes("//div[@class='reviewBox']");
foreach (var link in link_list)
{
htmlpage.InnerHtml = link.InnerHtml;
}
}
quindi qualcuno può dirmi come ritardare la richiesta
HtmlDocument page = new HtmlWeb().Load(Url);
caricherà i dati completi nella page
varibale
Non si tratta di ritardare la richiesta. Quel nodo è popolato da javascript utilizzando il DOM e il pacchetto di agilità Html è lo strumento sbagliato per tale requisito (non è affatto un motore Web, ma carica solo l'Html di base).
Quando ho bisogno di ottenere cose che richiedono un motore web completo per analizzare, solitamente utilizzo WatiN . È progettato per consentire alle unità di testare le pagine Web effettive, ma ciò significa che consente l'accesso programmatico alle pagine Web tramite un determinato motore di ricerca e caricherà l'intero documento. Viene fornito con IE o driver di Firefox fuori dalla scatola e ricordo vagamente che anche Chrome non è stato difficile da usare.