C#登录后从网站下载HTML

本文关键字:下载 HTML 网站 登录 | 更新日期: 2023-09-27 18:29:13

我最近一直在研究如何使用C#从网站获取数据。我尝试使用WebBrowser对象进行导航和登录,效果很好,但我一次又一次地遇到同样的问题:当我导航到想要的页面时,我会断开连接。

我已经尝试了一些事情,比如确保只有一个HtmlDocument存在,但我仍然会被注销。

TLDR:在使用WebBrowser浏览网站时,您如何保持登录状态,从一页到另一页或者有更好的选择吗

编辑:到目前为止,我有以下代码;

currentWebBrowser = new WebBrowser();
currentWebBrowser.DocumentText = @"<head></head><body></body>";
currentWebBrowser.Url = new Uri("about:blank");
currentWebBrowser.Navigate("http://google.com");
HttpWebRequest Req = (HttpWebRequest) WebRequest.Create("http://google.com");
Req.Proxy = null;
Req.UseDefaultCredentials = true;
HttpWebResponse Res = (HttpWebResponse)Req.GetResponse();
currentWebBrowser.Document.Cookie = Res.Cookies.ToString();

我什么时候该拿饼干?我的代码正确吗?

C#登录后从网站下载HTML

您必须保留登录请求返回的cookie,并在所有后续请求中重复使用这些cookie-身份验证cookie告诉服务器您实际上已经登录。例如,请参阅此处了解如何做到这一点。