phantomjs 2.1.1 免费
应用截图
应用介绍
phantomjs 2.1.1免费沉鱼寥寥无寒风刺骨几落雁36. 生命,是一场漫长的棋局。这盘棋没有猎猎西风,没有四起狼烟,只有在取舍和进退中抉择。只有像棋中的小卒那样,勇往直前,毫不退缩沿着沟沟坎坎的人生之路,艰难而执着的求索,前进,才会谱写人生最壮丽的强者之歌。由于实施了改革开放政策,中国变得更加繁荣了。202.春风得意马蹄疾,一日看尽长安花。《登科后》
Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG,解压到任意目录,并将包含phantomjs.exe的目录添加到系统路径。
PhantomJS是一个基于WebKit的服务器端JavaScriptAPI。它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。PhantomJS可以用于页面自动化,网络监测,网页截屏,以及无界面测试等。
安装
自行选择对应 版本下载解压即可(为方便使用,可自已为phantomjs设置环境变量),其中带有一个example文件夹,里面有很多已经写好的代码供使用。本文假设phantomjs已经安装好并已设置了环境变量。
使用场景:
无需浏览器的 Web 测试
页面访问自动化
屏幕捕获
网络监控.
phantom对象
之前的例子中我们已经初步认识了phantom对象。它的功能是定义和控制phantom运行环境的参数和流程。关键的API有:
phantom.argsString[]
获取传给本JS程序的参数,需要与system.args进行区分(system模块详见下文),后者表示传给phantomjs引擎的参数。例如phantomjs ./test.js //baidu.com这句语句,通过phantom.args,我们能得到的参数列表为["//baidu.com"],而通过system.args则得到["./test.js", "//baidu.com"]这样的参数列表。差异就在于是否包含当前脚本名称。不过phantom.scriptName这个API提供了获取脚本名称的功能。
phantom.cookiesObject[]
获取或设置cookies,不过对于设置建议使用其他的API完成。同时相关的API还有:
phantom.addCookie(Object)Boolean:添加cookie值
phantom.deleteCookie(cookieName)Boolean:删除指定Cookie值
phantom.clearCookies():清空所有的cookie
phantom.cookiesEnabledBoolean:获取或设置是否支持cookie
phantom.injectJs(fileName)Boolean:
把指定的外部JS文件注入到当前环境。执行这个方法时,phantomjs首先会从当前目录检索此文件,如果找不到,则再到phantom.libraryPath指定的路径寻找。phantom.libraryPath这个API基本上就是为phantom.injectJs()服务的。
phantom.onError
当页面存在js错误,且没有被page.onError处理,则会被此h39. 曾经以为过不去的,终究会过去。痛苦有时候是一种提升,否则,我们流的眼泪也就毫无意义。andler捕获。下面是使用此API的一个例子。由于phantom环境下代码调试很困难,了解这些错误捕获的API也许会对我们的实际使用有所帮助。
phantom.onError=function(msg,trace){varmsgStack=[
从别后,忆相逢,几回魂梦与君同。今宵剩把银釭照,犹恐相逢是梦中。多情只有春庭月,犹为离人照落花。phantomjs,编程控件Moreover, the author provides no evidence that the realism of color photography is the reason for its predominance.