phantomjs 第一次听说。之前没有用过,但是跟爬虫有关,所以没事就研究下。刚刚研究,一些东西还不知道是什么,但是先看看怎么用,能用来干什么吧。
之前的爬虫,我都是基于httpClient + jsoup 完成的,具体的思路就是httpClient爬取整个页面,然后在对页面进行分析,用jsoup或者是正则去获取自己想要的内容。
httpClinet 效率很高,响应速度快。但是有些页面返回的内容是基于JS加载或者异步请求的,当你用httpClinet去请求url时,返回的页面中没有你想要的内容,因为当你用浏览器去请求这个url是浏览器会把一些这个请求所带的所有js全部执行。httpClinet 没有这个功能,换句话说,httpClinet不能执行JS和异步请求,这样就有一定的局限性,现在很多页面的内容都是异步加载过来的,比如说许多电商商品的价格等。
然而,最近听说,phantom是一个基于WebKit的服务器端JavaScript API。它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。
具体是怎样的东西呢,说实话不懂,只能慢慢一步一步来学习。为了不让自己把之前学习的忘记,所以写了博客,其实就是笔记。
参考文档:http://www.woiweb.net/phantomjs-quick-use-tutorials.html
1.phantomjs的安装:安装包下载地址:http://phantomjs.org/download.html,包括Windows,Mac OS,Linux版本,自行选择对应 版本下载解压即可,其中带有一个example文件夹,里面有很多已经写好的代码供使用。
在参考文档中,说道安装完之后还要设置环境变量,具体指的什么不太清楚,我下载了windows版本的,安装的路径是 D:\Program Files (x86)
如图:
打开之后里面有个examples 文件,里面有很多例子,可供学习。 最主要的是里面有个phantomjs.exe这就是我们所