jjzjj

phantomjs

全部标签

javascript - Wordpress 上传插件表单不会在 headless 浏览器中激活

我正在做一个小项目,PhamtomJS将登录到我的站点并向其上传一个插件。我几乎拥有它,除了一个奇怪的问题。尽管我的代码的file.upload部分运行良好,但“立即安装”按钮仍处于禁用状态。这是从Phantom渲染的图片:如您所见,该按钮仍处于禁用状态。因此,当我尝试使用getElementById()方法单击它时,它将不起作用。如果我尝试通过以下方式提交表单,它也不会起作用:document.querySelector('form[action*="/wp-admin/update.php?action=upload-plugin"]').submit()我也尝试过手动启用按钮,然

使用 V8 进行 Javascript 单元测试

目前,我正在使用PhantomJS在我们的构建服务器上的QUnit和Sinon框架中运行Javascript单元测试。但是,PhantomJS使用带有JIT编译器的JavaScriptCore作为它的Javascript引擎。相反,我想使用GoogleChrome中使用的V8引擎或IE中使用的Chakra。我想这样做是因为我想检查代码的平台兼容性。是否有像PhantomJS这样使用这些引擎的流行测试运行器? 最佳答案 我能想到的最接近的是Zombie.js,这是一个用Javascript编写的headless浏览器,在Node.js

javascript - 如何通过在 CasperJs 中填写表单来登录

以下是我拥有的登录表单的hmlmlAlreadyaMemberYoucanusetradusloginidandpasswordEmail/Login*PasswordForgotyourpassword?Rememberme我正在使用以下代码登录:this.fill('form#user-login',{'form_submit':1,'name':'abc@gmail.com','pass':'pwd','op':'Login'},true);但我不认为它为我做了这件事。 最佳答案 casper.waitForSelector(

javascript - Phantomjs 有效但速度很慢

我正在尝试使用PhantomJS截取网页的屏幕截图。具体来说,我正在使用从this捕获espn.com的示例例子。我的代码如下所示:varpage=newWebPage();page.open('http://www.espn.com',function(status){page.render('fb.png');phantom.exit();});然后我使用我的终端或命令提示符转到我的PhantomJS目录并运行:phantomjsshotty.js一切运行良好,但需要6-8秒才能完成输出图像。那是正常的吗?有没有更快的方法可以在一秒或更短时间内完成?我正在使用CentOS和Wind

javascript - 使用 phantom js 打印 PDF - @page 规则不起作用

我们正在使用phantomJS从网页(内部网站)打印PDF。我的问题不在于整个样式,而在于@page规则。@page规则中的所有样式均未应用。你知道这可能是什么吗?@page{size:auto;padding:0!important;margin:10mm!important;page-break-before:avoid;border:none!important;page-break-after:avoid;page-break-inside:avoid;overflow:hidden!important;box-sizing:border-box!important;@top-

javascript - 如何使用 PhantomJS 下载 csv 文件

当我使用普通浏览器(Chrome)浏览网站A并点击网站A上的链接时,Chrome会立即下载CSV文件格式的报告。当我检查服务器响应header时,我得到以下结果:Cache-Control:private,max-age=31536000Connection:Keep-AliveContent-Disposition:attachment;filename="report.csv"Content-Encoding:gzipContent-Language:de-DEContent-Type:text/csv;charset=UTF-8Date:Wed,22Jul201512:44:30

javascript - 从 CLI 或 Web 调用时 PhantomJS 挂起

我正在尝试使用phantomJS捕获URL的屏幕截图,但是当我调用phantomJS(从命令行或Web应用程序)时,它挂起并且似乎永远不会执行“exit()”调用。我似乎找不到任何错误消息,并且在我杀死它之前它一直在运行。这是传递给phantomjs命令的JS文件:varpage=require('webpage').create();varsystem=require('system');varscript_address='';varpage_to_load='';varmembers_id='';varactivities_id='';varfolder_path='';if(s

javascript - phantomJS - 将参数传递给 JS 文件

现在我正在使用以下命令来运行phantomJSexec('./phantomjstable.js',$op,$er);表格.jsvarpage=require('webpage').create();page.open('table.php',function(){page.render('table.png');phantom.exit();});这就是目的。但现在我需要使用一个动态变量,即date。那么是否可以在exec命令行中传递PHP或Javascript变量,以便我可以在table.js中使用该变量?更新我尝试根据此处发布的解决方案修改我的代码Passingavariable

php - 加载所有javascript后如何输出DOM?

作为标题,我的问题是如何输出(假设在服务器计算机上保存为文本文件或使用ajax将结果传递给其他一些php函数)页面上的所有DOM内容?我做了一些功课,我试过curl可以使用“curlhttp://google.ca>dom.txt”输出所有DOM内容但是这种方式不会保存Javascript生成的内容,也就是说javascript代码不会运行。另一种方法是在页面中嵌入一些javascript代码,让页面加载我们要输出的网站,然后在所有加载完成后使用javascript代码保存所有DOM文件。我不确定phantom.js可以做这样的工作,如果可以,那么怎么做?任何人都可以就如何实现这一点给

php - 使用 PHP 的 exec() 给出错误 : Fatal: [Errno 2] No such file or directory; did you install

我正在尝试使用PHPexec()二进制casperjs,exec('casperjs/var/www/mysite/application/phantomjs/test.js');但是我得到了错误Fatal:[Errno2]Nosuchfileordirectory;didyouinstallphantomjs?CasperJS运行在PhantomJS之上,我在/usr/local/bin/phantomjs和/usr/local/bin/casperjs手动安装并创建了一个链接>。所以我猜casperjs在运行时会调用phantomjs。但是当我ssh进入服务器并运行时它工作正常ca