2017-12-27 11 views
0

Ich versuche, den HTML-Code einer Webseite mit der URL zu erhalten. Ich habe den folgenden Code geschrieben, es funktioniert, aber beim Vergleich der resultierenden Zeichenfolge stimmt es nicht mit dem Code überein, den ich sehe, wenn ich google chrome inspect verwende. Ich bin kein HTML-Gru, aber es scheint anders zu sein.HTML-Code einer Webseite abrufen

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://fantasy.premierleague.com/a/leagues/standings/517292/classic"); 

HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

StreamReader stream = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(response.CharacterSet)); 

string PageScript = stream.ReadToEnd(); 

Das resultierende Skript ist wie folgt: https://ideone.com/DXzfKy

ich diese zwei Zeilen bin mit dem Sicherheitsprotokoll

ServicePointManager.Expect100Continue = true; 
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 

einstellen Wenn jemand kann mir sagen, was ich bin auf der Suche, und was könnte falsch liegen, ich werde dankbar sein.

+2

"es scheint anders zu sein." inwiefern? –

+0

Eine Sache, die Sie tun möchten, ist, den Stream in einem 'using' Block oder ähnlichem zu entsorgen. Sie müssen 'PageScript' jedoch außerhalb des Blocks deklarieren. –

+0

@DStanley Ich weiß nicht, wie ich tho beschreiben soll, aber ich suche nach einem bestimmten Block, den ich im Inspektionscode sehen kann, aber er wird nicht in der Ausgabe-Zeichenkette ausgegeben. Ich habe einen Link für die Ausgabe-String zur Verfügung gestellt, und wenn Sie die URL verwenden können, um den Code zu überprüfen und für sich selbst sehen. –

Antwort

0

Alles, was Sie tun müssen, ist eine Instanz eines WebClients zu erstellen und mit dieser können Sie die Daten von URI lesen, als in StreamReader und schließlich im Nur-Text-Format konvertieren.

WebClient client = new WebClient(); 
Stream dataFromPage = client.OpenRead(new Uri("https://ideone.com/DXzfKy")); 
StreamReader reader = new StreamReader(dataFromPage); 
string htmlContent = reader.ReadToEnd(); 
Verwandte Themen