PhantomJS是什么?
PhantomJS is a headless web browser scriptable with JavaScript. It runs on Windows, macOS, Linux, and FreeBSD.(PhantomJS 是一个可编写JS脚本的无头浏览器,可以运行在macOS,Linux,FreeBSD上)。这是PhantomJS官网上的介绍,简单来说,PhantomJS是一个没有图形用户界面(GUI)的浏览器,通常通过命令行来控制。
PhantomJS能做什么?
网页自动化测试
希望自动的登陆网站并做一些操作然后检查结果是否正常
网页监控
希望定期打开页面,检查网站是否能正常加载,加载结果是否符合预期。加载速度如何等。
网络爬虫
获取页面中使用js来下载和渲染信息,或者是获取链接处使用js来跳转后的真实地址。
网页截屏
可以打开一个网页并生成一个网页的截屏。
PhantomJS的几个入门DEMO
网页截屏
下面的脚本演示了打开一个URL,并生成该URL的图片保存在本地。
1 | var page = require('webpage').create(); |
网页监控
该脚本记录了某个URL下所有的请求和响应
1 |
|
DOM操作
如下脚本打开百度页面之后,返回了ID选择器所对应元素内部的文本。
1 | ; |
还有哪些headless浏览器?
Firefox,Chrome,Microsoft Edge