zoukankan      html  css  js  c++  java
  • 使用selenium+phantomJS实现网页爬取

    有些网站反爬虫技术设计的非常好,很难采用WebClient等技术进行网页信息爬取,这时可以考虑采用selenium+phantomJS模拟浏览器(其实是真实的浏览器)的方式进行信息爬取。之前一直使用的selenium操作Firefox浏览器进行爬取,但是需要安装并打开firefox浏览器,实际操作中不方便配置且占用大量内存。今日发现网上介绍可以采用phantomJS(无界面浏览器),经测试,果然可以达到目的,只是会出现一个控制台,并不影响整体效果,所以将其记录下来,以方便以后使用。
    第一步:下载selenium-dotnet,选择相应的版本并引用。
    第二步:下载phantomjs-2.1.1-windows.zip(http://phantomjs.org/download.html),解压下载的文件,将phantomjs.exe文件拷贝到系统目录或者项目的exe目录下。
    第三步:通过调用phantomjs爬取网页信息,代码如下:
    1、创建driver实例
    static IWebDriver GetPhantomJSDriver()
    {
         return new OpenQA.Selenium.PhantomJS.PhantomJSDriver();
    }
    

    2、跳转到URL

    /// <summary>
    /// 跳转URL
    /// </summary>
    /// <param name="url"></param>
    static bool Navigate(string url)
    {
    	try
    	{
    		driver = driver ?? GetPhantomJSDriver();
    		if (driver == null)
    		{
    			return false;
    		}
    	}
    	catch (WebDriverException e)
    	{
    		return false;
    	}
    	driver .Navigate().GoToUrl(url);
    	return true;
    }
    

     3、之后就可以解析获取想要的信息。


    作者:魏守峰
    公司:武汉一格空间科技有限公司
    产品:流程化表格数据处理平台
    出处:http://www.cnblogs.com/shoufengwei/
    本文版权归作者和博客园共有,欢迎转载、交流,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。如果觉得本文对您有益,欢迎点赞、欢迎探讨。
  • 相关阅读:
    NUnit使用笔记2-GetStarted
    NUnit使用笔记1-下载与安装
    2014年的总结
    2015-02-10
    2015-02-03
    一些书
    SQLServer 安装提示需要重启计算机的解决方案
    ArcSDE
    plsql更改用户登录密码
    Oracle创建表空间和用户
  • 原文地址:https://www.cnblogs.com/shoufengwei/p/5274785.html
Copyright © 2011-2022 走看看