目前,前端技术比较火热。各种前端技术、框架层出不穷。大部分站点的数据都是异步动态加载,相比获取静态内容,要抓取动态内容稍微麻烦点
常用的两种抓取动态网页数据的方法: 1.借助Firebug等浏览工具,分析请求数据,获得数据接口地址。然后直接动态改变接口参数,获取json格式的数据。 2.使用浏览器渲染引擎触发javascript事件,借助工具WebKit,Selenium
借助WebKit,我们可以自定义浏览器渲染引擎,这样就能完全控制想要执行的行为,如果不需要这么灵活,那可借助Selenium,它提供了使浏览器自动化的API接口,本文简单介绍Selenium的使用
环境 Mac python2.7 selenium3.0.2 Firefox51.0.1
浏览器自动搜索北京赶集网 ‘亦庄’附近的租房信息
现在直接调用selenium使用的话,会爆错,且不能调动浏览器;stackoverflow.com有网友说用2.53.2(具体版本记不清了),这个版本能调起浏览器,但仍会爆错,接着浏览器自动关闭。所以,还是直接用版本3吧。具体解决方法下面会讲到
下载geckodriver 我下载的是geckodriver-v0.13.0-macos.tar.gz,将解压后的文件放在你指定的目录下,我放在了桌面上,如下图: 下载地址 https://github.com/mozilla/geckodriver/releases 参考https://www.zhihu.com/question/49568096
以北京赶集网为例:http://bj.ganji.com/fang1/ 分析此页面:
新闻热点
疑难解答