在上一篇爬虫博客中,我们讲述了应对IP访问限制的策略,即爬取代理IP并不断改变代理的方式。但是某些网站不仅在访问时做了限制,而且在返回网页时也做了巧妙的处理,比如在页面加载时调用js动态请求内容等。这种情况就不是简单的发出一个get请求可以爬取的了,这个时候可能就需要调用谷歌浏览器来实现爬取。本篇我们介绍通过C#调用谷歌浏览器来实现动态信息爬取。
普通爬虫遭遇的困境
假如我们要爬取某博客页面的详细信息,如标题,正文,作者,发布时间,阅读数等等。我们的第一思路是对这个页面的url发送一个get请求,对返回的网页报文通过xpath解析我们需要的信息。下面以一个博客详情页面为例:C#攻克反爬虫之代理IP爬取
class Program
{
static void Main(string[] args)
{
BasicalMothed("https://blog.csdn.net/Leaderxin/article/details/102764234"); //调用原始方法
Console.Read();
}
/// <summary>
/// 这个我们普通的爬虫思路,通过请求url返回报文爬取
/// </summary>
static void BasicalMothed(string url)
{
HttpWebRequest req = WebRequest.Create(url) as HttpWebRequest;
if (req == null)
return