c httpclient抓取网页( 2017年05月13日12:00本文基于会话操作登陆网页及页面读取相关操作技巧,)
优采云 发布时间: 2022-02-19 15:11c httpclient抓取网页(
2017年05月13日12:00本文基于会话操作登陆网页及页面读取相关操作技巧,)
C#使用WebClient登录网站,登录后抓取网页信息。
更新时间:2017-05-13 12:00:58 作者:柔城
本文文章主要介绍C#使用WebClient登录网站并抓取登录后网页信息的实现方法,涉及C#基于session操作登录网页和页面阅读相关操作技巧,小伙伴们有需要的可以参考下
本文示例介绍了C#使用WebClient登录网站并获取登录后网页信息的实现方法。分享给大家参考,详情如下:
C# login网站其实是模拟浏览器提交表单,然后记录浏览器响应返回的session cookie值,并用这个session cookie值再次发送请求到request,达到模拟登录的效果。
以下 CookieAwareWebClient 实现在发送请求时携带 cookie。
public class CookieAwareWebClient : WebClient
{
private CookieContainer cookie = new CookieContainer();
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest request = base.GetWebRequest(address);
if (request is HttpWebRequest)
{
(request as HttpWebRequest).CookieContainer = cookie;
}
return request;
}
}
以下是模拟表单提交登录的使用示例:
var client = new CookieAwareWebClient();
client.BaseAddress = @"https://hovertree.net/any/base/url/";
var loginData = new NameValueCollection();
loginData.Add("login", "YourLogin");
loginData.Add("password", "YourPassword");
client.UploadValues("login.php", "POST", loginData);
//Now you are logged in and can request pages
string htmlSource = client.DownloadString("index.php");
对C#相关内容比较感兴趣的读者可以查看本站专题:《C#编码操作技巧总结》、《C#中XML文件操作技巧总结》、《C#常用控件使用教程》、《WinForm控件使用方法》总结》、《C#数据结构与算法教程》、《C#面向对象编程入门教程》和《C#编程线程使用技巧总结》
我希望这篇文章对你的 C# 编程有所帮助。