Download di risposta da WebResponse - Immagini incluse?
-
27-10-2019 - |
Domanda
Sto provando a scaricare HTML in modo da poterlo analizzare usando la larghezza di banda minima per scaricare. Questo è un po 'del mio codice.
if (!String.IsNullOrEmpty(siteAddress))
webReq = WebRequest.Create(siteAddress)
WebResponse webRes = webReq.GetResponse();
Stream streamResponse = webRes.GetResponseStream();
StreamReader streamRead = new StreamReader(streamResponse);
StringReader sr = new StringReader(streamRead.ReadToEnd().Trim());
streamResponse.Close();
streamRead.Close();
webRes.Close();
HtmlAgilityPack.HtmlDocument hDoc = new HtmlAgilityPack.HtmlDocument();
hDoc.Load(sr);
Qualcuno può confermare che il recupero della risposta fornisce solo la risposta del testo e non vengono scaricate anche immagini? Che ne dici di caricarlo con il metodo HTMLagilityPack?
Soluzione
Quando si usa WebClient
, WebRequest
o HtmlAgilityPack
è solo il html Scaricherai.
Se desideri le immagini (o altre risorse), devi cercare gli URL dell'immagine nel documento scaricato e emettere richieste da solo per ottenerle.
Se vuoi sperimentare un po ', il WebBrowser
Il controllo potrebbe essere qualcosa da guardare. Da questo, potresti prendere il Document
proprietà e guarda la sua proprietà Images
E scarica tutte le immagini da solo.
Cosa vuoi fare?
Altri suggerimenti
Scarichi la sorgente HTML del sito, non l'intero sito. Questa è una grande differenza.
Guarda come usare Pacchetto di agilità HTML e anche Questo