2017-12-27 475 views
0

的HTML代码,我试图用得到网页的HTML代码,它的URL。我写了下面的代码,它的工作原理,但比较结果字符串,它不匹配我使用谷歌浏览器检查时看到的代码。我不是HTML gru,但它似乎有所不同。获取网页

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(); 

得到的脚本如下:https://ideone.com/DXzfKy

我使用这两条线来设置安全协议

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

如果有人能告诉我,我到底在看什么可能错了,我将不胜感激。

+2

“它似乎是不同的。”以什么方式? –

+0

你想要做的一件事就是将流置于'using'块或类似的东西中。不过你必须在块外声明“PageScript”。 –

+0

@DStanley我不知道如何来形容寿,但是我正在寻找一个特定的块,我可以在检查代码中看到的,但它在输出字符串不会退出。我为输出字符串提供了一个链接,如果您可以使用该网址检查代码并亲自查看。 –

回答

0

您只需创建一个WebClient的实例,并使用它可以从URI读取数据,然后将其转换为StreamReader并最终以纯文本格式进行转换。

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