PhantomJS是一个基于webkit的JavaScript API。它使用QtWebKit作为它核心浏览器的功能,使用webkit来编译解释执行JavaScript代码。任何你可以在基于webkit浏览器做的事情,它都能做到。它不仅是个隐形的浏览器,提供了诸如CSS选择器、支持Web标准、DOM操作、JSON、HTML5、Canvas、SVG等,同时也提供了处理文件I/O的操作,从而使你可以向操作系统读写文件等。PhantomJS的用处可谓非常广泛,诸如前端无界面自动化测试(需要结合Jasmin)、网络监测、网页截屏等。
下载:下载链接,提供包括win、macos、Linux、unix多操作系统支持。
1、懒人配置全局变量安装:
shell 执行。vi ~/.bash_profile
全局配置完成执行 source ~/.bash_profile 完成生效
第一个phantoms helloword 程序
运行,可见标题。上面的核心API 就是webpage,它的作用主要是提供了一套可以访问和操作web文档的核心方法,包括操作DOM、事件捕获、用户事件模拟等等。
其他api还有:
system:该模块提供了一些与操作系统相关的接口,例如访问操作系统信息、访问系统环境变量、接受命令行参数等等与程序执行相关的系统信息。
fs:即FileSystem。熟悉NodeJS的朋友都知道,NodeJS也内建了相关的核心模块。fs提供了执行文件I/O操作的标准接口,如读写文件、删除文件等。它使得你持久化一些文件(如logfile等)变得非常容易。
webserver:如其名字一样,你可以基于它来实现自己的webserver,用来处理请求并且执行PhantomJS代码等。
其它一些配置信息,执行PhantomJS的命令格式如下:
phantomjs [switches] [options] [script] [argument [argument[...]]]
其中,各种参数都是可选的。例如我们第一个程序的执行命令如下:
1、phantomjs hello.js
打开debug模式(该模式用于开发,可提供必要提示信息):
2、phantomjs--debug=yes hello.js
设置cookie路径:
3、phantomjs--cookie-file=cookie.txt hello.js
至此,就是简单使用phantoms。
网友评论