草庐IT

phantomjs-prebuilt

全部标签

javascript - 如何使用 PhantomJS 提交表单?

我越来越熟悉PhantomJS。但我不能得到一件事。我有一个简单表单的页面:和一个save.php只是写下test_data值所以我这样做:page.evaluate(function(){document.forms[0].test_data.value="555";doSubmit();});呈现页面时,我看到文本字段为555,但表单未提交且save.php未记下test_data值。所以doSubmit()没有执行,是吗?doSubmit()是一个简单的验证步骤,提交应该加载下一页。所以问题是:如何使用PhantomJS在页面上执行javascript代码?

javascript - 我们如何在 phantomjs 中使用 evaluateAsync

evaluateAsync的用法是什么,我们什么时候必须使用这个函数,使用这个函数有什么好处。在下面我们看到一个可怜的documentation为此:varwebPage=require('webpage');varpage=webPage.create();//@TODO:Finishpage.evaluateJavaScriptexample.任何主体都可以展示在phantomjs中使用evaluateAsync的示例 最佳答案 此函数允许您执行任何JavaScript代码,例如evaluateAPI函数。但它会评估你的代码异步

javascript - Phantomjs 函数.prototype.bind

是的,我知道。Phantomjs不支持函数绑定(bind)。但也许我可以使用其他东西,或者说page.open不要使用bind?好像还可以,但是有些网站返回错误TypeError:'undefined'isnotafunction(evaluating'b.bind(a)')之后我写了一个简单的脚本,只打开一个页面:varaddress=phantom.args[0];if(!address)phantom.exit(1);page=require("webpage").create();page.open(address,function(status){setInterval(fu

javascript - Jasmine 测试在 Chrome 和 Firefox 中通过,但在 PhantomJS 中失败

我正在使用React构建一个基本的博客应用程序。我正在使用Jasmine和Karma来运行我的前端测试。我启动并运行了第一个测试,它在Chrome(Chromium)和Firefox中通过了测试,但是当它在PhantomJS中运行时,我收到以下错误:PhantomJS1.9.8(Linux0.0.0)ERRORTypeError:'undefined'isnotafunction(evaluating'ReactElementValidator.createElement.bind(null,type)')at/home/michael/repository/short-stories

javascript - PhantomJS 崩溃 - 退出代码 126

尝试在CentOS(64位)系统上的工作流程中运行phantomJS时,我遇到了一个奇怪的问题。这是它报告的错误:[4mRunning"qunit:all"(qunit)task[24mTestinghttp://localhost:8000/tests.htmlRunningPhantomJS...[31mERROR[39m[31m>>[39m/home/jenkins/jenkins/workspace/nick_node_te/web-client/client/node_modules/grunt-contrib-qunit/node_modules/grunt-lib-pha

javascript - PhantomJS 并单击表单按钮

我有一个非常简单的HTML表单,我试图用各种数据对其进行测试。我使用IE对象在MSAccess/VBA中编写了原型(prototype)概念验证。它运行良好,但完成的测试产品必须使用PhantomJS。我已经让页面接口(interface)正常工作,并且表单填充得很好。我卡住的地方是触发提交按钮。我梳理过S.O.并尝试了所有建议,但没有任何效果。我正在使用PhantomJS1.9.7并使用直接的JavaScript测试脚本。我尝试了各种JavaScript技术来触发提交按钮。为了满足“只使用JQuery”的人群,我也试过了。什么都不起作用。当我在测试脚本末尾呈现表单时,我看到表单中填充

javascript - PhantomJS .click() 不工作

此代码无效:varpage=require('webpage').create();page.open('http://www.ebay.com/',function(){console.log('Pageloaded');page.includeJs('http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js',function(){console.log('jQueryincluded');page.render('C:/beforeclick.jpeg');console.log('Render1');page

javascript - PhantomJS 问题写入文件 fs。找不到变量 : fs

我是第一次尝试phantomJS,我已经成功地从站点中提取了som数据,但是当我尝试将一些内容写入文件时,我收到错误:ReferenceError:找不到变量:fs这是我的脚本varpage=require('webpage').create();varfs=require('fs');page.onConsoleMessage=function(msg){console.log(msg);};page.open("http://www.pinterest.com/search/pins/?q=motorbike",function(status){if(status==="succe

javascript - 使用 clipRect() 后设置 PhantomJS 捕获整个屏幕

在设置了page.clipRect后跟page.render之后,如何禁用clipRect,以便后续页面呈现整个视口(viewport)?page.clipRect={top:0,left:0,height:10,width:10};page.render('screencap.png');//croppedimagepage.clipRect='';page.render('fullscreen.png');//stillcroppedimage! 最佳答案 简单地重置clipRect的所有值:page.clipRect={lef

javascript - 如何在 PhantomJS 或 CasperJS 中导入其他 javascript 模块

我正在尝试使用CasperJS构建功能测试。caseperjs由后端测试套件使用以下命令运行:PHANTOMJS_EXECUTABLE=../client/node_modules/phantomjs/bin/phantomjs../client/ext_modules/casperjs/bin/casperjstest../client/test/functional/init.coffee在init.coffee中,我想导入/包含紧挨着它的其他模块(文件)。怎么做?以下不起作用:require("user")我只想从其他文件中获取内容到init.coffee