草庐IT

phantomjs-prebuilt

全部标签

javascript - PhantomJS 保持缓存

我正在使用phantomjs来测试访问网页,这在大约半小时的时间内运行了大约350次。然后我在服务器上运行webalizer以测试页面访问。我的phantomjs客户端位于phantomjs的1个实例中,因此它的工作原理基本上是这样的:一旦一个客户端打开网页就会启动下一个客户端,所有客户端都具有单独的IP地址和MAC地址。然而,我在webalizer中发现的是,虽然我对服务器有350次点击,但我在某些css文件和其他文件上运行的每个phantomjs实例只获得1次点击。所以我想出了将客户端缓存在一起的想法。我尝试在调用phantomjs实例时运行--max-disk-cache-siz

javascript - PhantomJS/CasperJS 站点登录,PhantomJS 不接受 cookie

我最近尝试登录一个强制我接受cookie的网站。我正在使用phantomJs和casperJs。我写了一个应该处理登录的小脚本,但它将我重定向到一个告诉我必须接受cookie的站点。电子邮件和密码只是占位符。我要登录的网站是https://de.buyvip.com/。但我需要单击按钮AnmeldenmitAmazon以便我可以使用我的亚马逊帐户登录。其他登录表单不起作用。(这导致了这个长网址,我只是从我的浏览器中复制它)有人可以帮助我吗?这是脚本:varcasper=require("casper").create()varfs=require('fs');varpage="http

PhantomJS 不支持 Javascript 国际化 API

我针对使用ECMAScript国际化API的AngularJs服务运行了一系列Jasmine测试。当我通过Chrome运行它们时,它们都运行成功。但是,当我使用PhantomJS通过Maven运行它们时,它们都失败了,因为它似乎PhantomJs还不支持国际化API。我使用Intl对象进行测试时得到的错误消息是:1:ReferenceError:Can'tfindvariable:IntlinlocalizationService.js其余的测试都失败了。测试很简单,看起来像这样:it('Formatdatewithen-uslocale',(function(){vardate="0

javascript - Jasmine 使用 PhantomJS : ReferenceError: Can't find variable: $ 丢失了 jQuery

我想用PhantomJS在控制台中测试Jasmine使用jQuery的JS代码,但是ReferenceError:找不到变量:$我可以在浏览器中通过Jasmine正常测试代码。感谢您的帮助。$phantomjsexamples/run-jasmine.jshttp://localhost:8888/ReferenceError:Can'tfindvariable:$http://localhost:8888/public/javascripts/PhotoTable.js:59ReferenceError:Can'tfindvariable:$http://localhost:8888

javascript - mocha-phantomjs 的 mocha init 超时

我有以下testrunner.html:Specsfunctionassert(expr,msg){if(!expr)thrownewError(msg||'failed');}_runner.js如下所示://ConfigureRequireJSrequire.config({baseUrl:'/client',urlArgs:"v="+(newDate()).getTime()});//Requirelibrariesrequire(['require','lib/chai','lib/mocha'],function(require,chai){//Chaiassert=chai

javascript - PhantomJS 在观看 YouTube 视频时不模仿浏览器行为

我一周前将这个问题发布到PhantomJS邮件列表,但没有得到任何回复。希望在这里有更好的运气......我一直在尝试使用PhantomJS从YouTube上抓取信息,但一直无法正常工作。考虑通过iframe元素将YouTube视频嵌入到网页中。如果将src属性引用的URL直接加载到浏览器中,您将获得视频的整页版本,其中视频封装在embed元素中。embed元素不存在于初始页面内容中;相反,页面上的某些脚本标记会导致对某些Javascript进行评估,最终将嵌入元素添加到DOM中。我希望能够在它出现时访问此嵌入元素,但当我在PhantomJS中加载页面时它从未出现。这是我使用的代码:v

javascript - 找不到变量 - PhantomJS

经过数小时的无果搜索后,我在这里发布。PhantomJS不允许我在下面的代码中使用变量,在运行我的脚本时出现错误消息“找不到变量”。你知道我的问题在哪里吗?page.open(myurl,function(status){if(status=='success'){page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js",function(){elem=page.evaluate(function(){/*SelectoneelementwithjQuery*/myElem=$('b

javascript - 使用 javascript 链接下载 PhantomJS

我正在尝试抓取以下网站:http://www.fangraphs.com/leaders.aspx?pos=all&stats=bat&lg=all&qual=0&type=8&season=2011&month=0&season1=2011&ind=0&team=0&rost=0&players=0如果您单击标题为“导出数据”的表格右上角的小按钮,则会运行一个javascript脚本,并且我的浏览器会下载.csv格式的文件。我希望能够编写一个可以自动执行此操作的PhantomJS脚本。有什么想法吗?上面的按钮是这样编码成HTML的:ExportData我也在HTML源码中找到了这个函

javascript - PhantomJS 在第一页跳过标题

我想从第一页删除页眉,我将页眉定义为:header={height:header_height,contents:phantom.callback(function(pageNum,numPages){if(pageNum==1){return"";}returnheader_contents;})};但是它用header_height留下了空白边距。有什么方法可以为第一页设置header.height=0吗? 最佳答案 您不能专门为首页设置边距。但是你可以在第一页上包含css样式,因为phantomjs尊重cssmargin

javascript - 在 PhantomJS 中使用 Jasmine 测试 $interval

看来我的interval从未被触发。我有一个包含$interval的指令,我想测试它。我删除了所有与指令相关的代码,并在其Controller中添加了以下代码:window.called=0;window.interval=$interval(function(){window.called++;console.log('interval'+window.called);//4},10);console.log('initialized');//1测试看起来像这样:describe('myDirective',function(){beforeEach(module('myModule