HttpWebResponse возвращает неправильный html - PullRequest
0 голосов
/ 24 апреля 2020

Для получения bitcoin цена, которую я сделал это:

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("https://www.blockchain.com/prices");
req.Method = "GET";
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*;q=0.8";
req.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36";
req.ContentType = "text/html; charset=utf-8";
req.Referer = "";
req.KeepAlive = true;
req.Timeout = 25000;
req.AllowAutoRedirect = false;

CookieContainer cookieJar1 = new CookieContainer();
req.CookieContainer = cookieJar1;

HttpWebResponse res = (HttpWebResponse)req.GetResponse();

foreach (Cookie cookie in res.Cookies)
{
    cookieJar1.Add(new Cookie(cookie.Name.Trim(), cookie.Value.Trim(), "/", cookie.Domain));
}

Stream Stream = res.GetResponseStream();
StreamReader reader = new StreamReader(Stream);
string reader_str = reader.ReadToEnd();

HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.LoadHtml(reader_str);

HtmlAgilityPack.HtmlNode node = htmlDoc.DocumentNode.SelectSingleNode("//p[@title='Bitcoin']");

string bitcoin_price_str = node.InnerText.Trim().Replace(",", "");
bitcoin_price = double.Parse(bitcoin_price_str);

reader.Close();
Stream.Close();
res.Close();

Reader_str выглядит так:

https://pastebin.com/jT66GzmA

Почему reader_str имеет неправильный html?

Как я могу решить эту проблему?

...