Мне нужно прочитать веб-страницу и сохранить ее содержимое в строке для дальнейшей обработки.
Звучит просто, но у меня проблема с поддержкой cookies.Как сохранить веб-страницу в строку с поддержкой cookies (httpWebRequest)
Открытая страница говорит Мне нужен браузер, поддерживающий файлы cookie (или включен).
Я сделал метод, пытающийся сделать это через httpWebRequest - который обычно работает для меня, но я зашел в тупик с этими несчастными печеньями ...
Любая идея, как заставить его работать?
Вот мой метод:
string ReadHtml (string address, string encoding) {
Uri url = new Uri(address);
CookieContainer cookieContainer = new CookieContainer();
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
httpWebRequest.AllowAutoRedirect = true;
httpWebRequest.KeepAlive = true;
httpWebRequest.CookieContainer = cookieContainer;
httpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
httpWebRequest.Method = "GET";
HttpWebResponse webResponse = (HttpWebResponse)httpWebRequest.GetResponse();
// Code Page
Encoding enc = Encoding.GetEncoding(encoding);
// Read content
StreamReader loResponseStream = new StreamReader(webResponse.GetResponseStream(),enc);
string lcHtml = loResponseStream.ReadToEnd();
webResponse.Close();
loResponseStream.Close();
return lcHtml;
}
Мне не нужно читать/управлять куки. Просто веб-страница, которую я хотел прочитать, требует от меня файлов cookie, которые могут отображаться. Пока отображается «Пожалуйста, включите файлы cookie в своем браузере» (вместо «нормального» контента). То, что я ищу, - это страница, на которой я счастлив «съесть» ее куки :) – Maciej