Articles of phantomjs

exec()和phantomjs问题与绝对path

我正在使用phantomJS编程取网页的屏幕截图。 我的networking服务器运行在Linux 64位上。 情景 我的test.php文件 exec('./phantomjs –version', $o, $e); print_r($o); echo $e; 我在浏览器中打开test.php 。 我得到的是: 1.9.1 // version number 0 // exit code 这certificate我可以通过exec()运行命令, phantomJS正在完美运行。 问题 现在,当我用上面的代码replace: exec('./phantomjs http://mywebsite.com/test.js', $o, $e); print_r($o); echo $e; 输出是: Array ( ) // empty output 139 // exit code which on investigating turned out to be segmentation fault 我也试过: […]

使用python和selenium连接到phantomJs webdriver时遇到困难

我试图在一个使用selenium和一个phantomjs webdriver的Linux服务器上运行一个python脚本; 但是,我不断收到以下错误信息: selenium.common.exceptions.WebDriverException: Message: Service /home/ubuntu/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs unexpectedly exited. Status code was: 127 这是一个简单的testing脚本,失败并产生这个错误: import selenium from selenium import webdriver driver = webdriver.PhantomJS(executable_path='/home/ubuntu/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs') 调用path上的文件,返回: file /home/ubuntu/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs /home/ubuntu/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=d0f2a21ff9e0b82113a2095e7cbca7dceaba88fb, stripped 有没有人有任何想法如何让这个脚本启动和运行? 我已经读过似乎是类似的stackoverflow问题,并试图应用build议的解决scheme,如通过npm重新安装幻像和执行脚本与sudo,但没有运气。 如果我可以提供任何信息,请让我知道。

尝试在OpenShift上运行PhantomJS:无法修补GhostDriver,以便它可以绑定在服务器的IP地址

TL;博士 如何解决当我不能在Linux服务器上的根目录下version 'GLIBCXX_3.4.15' not found ? 我打算在OpenShift上使用PhantomJS。 正如本文所解释的,PhantomJS GhostDriver仅在本地主机上绑定,而在OpenShift上,您不能在本地主机上绑定任何东西(您需要指定机器IP地址)。 Paolo Bernardi (文章的作者)分享了修复PhantomJS 的补丁 ,以便可以在IP地址上进行绑定。 问题是提供的补丁在我的OpenShift服务器上./phantomjs -v :当我在补丁PhantomJS安装上运行./phantomjs -v时,我发现了一个分段错误。 所以我决定自己在Debian服务器上编译PhantomJS,感谢PhantomJS文档 : sudo apt-get install build-essential g++ flex bison gperf ruby perl libsqlite3-dev libfontconfig1-dev libicu-dev libfreetype6 libssl-dev libpng-dev libjpeg-dev python ttf-mscorefonts-installer git clone git://github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9 # apply the fix ./build.sh 当在编译的二进制文件上运行./phantomjs -v时,我得到了1.9.8 :它工作。 […]

PhantomJS:pipe道input

我正在尝试使用PhantomJS来呈现一个HTML页面到PDF。 我不想将文件写入磁盘,我有内存中的HTML,我想在内存中的PDF。 在这个问题上使用Pooria Azimi的出色答案,我可以从命名pipe道获得pdf。 当在另一端尝试相同的时候(用命名pipe道replaceinput文件),我最终得到一个空白的pdf。 这就是我现在正在做的(简化): mkfifo in_pipe.html out_pipe.pdf ./phantomjs rasterize.js in_pipe.html out_pipe.pdf 然后在另一个terminal: echo '<center>hey!</center>' > in_pipe.html cat out_pipe.pdf > out.pdf 文件out.pdf被创build,但是是空的。 我错过了什么吗?

汉字显示为问号

这已经被问过,但是我弄不清楚有什么问题。 我使用phantomjs .render .render()来打印pdf。 呈现的页面基本上是一个具有以下属性的本地静态网站: <meta charset="UTF-8"> font: normal 17px helvetica,arial,verdana,sans-serif 在Windows本地运行和testing以及Azure工作者angular色 从Chrome浏览器打印同一页面时安装和使用中文语言包(安装的字体,例如Arial Unicode MS,SimSun …) 拉丁字符都很好,只是中文的显示为“?” 例如 我也尝试了Arial或SimSun的整个页面,但没有区别。 任何想法如何让这个工作在Windows上? 谢谢!

使用Phantom JS将文件夹中的所有HTML文件转换为PNG

我已经开始在Windows上使用Phantom JS,但是我在查找其function方面遇到了一些困难(可能是我的问题的根源)。 使用幻影JS我想要做到以下几点: 给它一个本地机器文件夹的位置, 让它导航到该位置并确定HTML文件的列表, 一旦该列表被标识为循环的HTML文件列表并将其全部转换为PNG(类似于rasterize.js示例的工作方式),其中文件名gsubs“HTML”和“PNG”。 我敢肯定,这可能是可能的,但我无法findPhantom JS函数调用: 获取文件夹中的文件列表 Phantom JS中gsub和grep的格式。

在Windows上安装CasperJS:如何正确执行?

我知道CasperJS网站上有一个关于如何在Windows上安装CasperJS的文档,但是对我来说这些人只是为专业人士解释。 如果你对所有这些CasperJS和PhantomJS世界都是陌生的,那么你就不会有机会理解甚至花费两天的时间来searchnetworking,以获得更好的解释。 我正在做一个项目,需要在我的项目网站上列出的每个网站的截图,环顾四周,我发现PhantomJS将是伟大的这项任务(网站截图)。 我下载了PhantomJS,并在system32粘贴了它的phantomjs.exe文件,当我使用cmd.exe发送命令时,它运行良好。 我甚至phantomjs.exe只抓取phantomjs.exe截图。 但是当我注意到当这两个工作在一起的时候(CasperJS和PhantomJS),当我使用CasperJS的时候,甚至可以减less屏幕截图的大小,我的问题就来了。 实际上我唯一需要CasperJS的地方是限制了镜头的大小,但是从昨天开始我一直在想如何让CasperJS在Windows上工作,但是没有用。 我已经下载CasperJS并试图以许多方式安装它也试图按照文档,但没有。 我将CasperJS文件夹名称从其下载名称更改为CasperJS作为文档build议,但是当我检查cmd试图调用某些命令时,没有任何反应。 无论如何,削减故事拍摄任何人都可以帮助我在简单的条款,考虑到我是一个新手解释如何CasperJS可以安装在窗口上,或者如果可能与PhantomJS只能如何重新大小的程序产生的Iamge让我说如果我想要960到400像素。

phantomjs exit()不会终止进程

我一直在Windows 7上使用phantom.js已经有一段时间了(我认为v1.4.0是我使用的第一个版本),一切都很好。 但是由于某种原因,调用phantom.exit()时,进程没有正常终止,我完全不知道为什么。 这个问题从v1.7.0开始发生,从一天到另一天。 在1.7.0中,所有的东西都能正常工作,但是没有更多。 即使升级到1.8.0和现在1.9.0,它仍然无法正常工作。 控制台挂起。 我无法input任何东西,phantomjs.exe仍然列在taskmanager的进程列表中,即使CTRL + C也不做任何事情。 整个事情都被冻结了。 控制台中的下划线闪烁,好像它期望更多的input,但我不能input任何内容。 我唯一的机会就是使用[X]button来closurescmd窗口,这是完全愚蠢的自动testing。 我使用从http://phantomjs.org/下载的预编译的二进制文件,正如我所说的:它从一天停止工作到另一天。 我什至重新安装了几次,甚至不同的文件夹,但过程不会终止。 任何人有一个想法是什么问题可以?

如何在Windows 7上安装幽灵

有谁知道(也许所有相关的步骤)如何运行/安装Wraith在Windows 7上? 文档( http://bbc-news.github.io/wraith/index.html#Installation )不幸的是很模糊。 提前致谢 马丁

在Apache 2.4中安装casperJS和phantomJS将数据传递给PHP

我试图通过单击网站中的运行button来运行我的casperjs脚本。 我的本地设置是PHP 5.5.14与Windows7上的Apache 2.4 [正常运行; 用php页面testing]; 我的问题是:如何正确安装casperJS和phantomJS,以便在执行脚本时识别PATH。 我需要知道Windows中的path是什么: putenv(“PHANTOMJS_EXECUTABLE = / usr / local / bin / phantomjs”); 。 我已经解决了以下可能的解决scheme,但是没有一个提到如何正确安装casperJS和phantomJS以便Web服务器识别它们: CasperJS将数据传回PHP ,将参数从php传递给casperjs / phantomjs , 如何运行casperJS脚本从PHP API , 使用casperjs和PHP来保存数据 , php执行幻像js的作品,但casperjs不工作的权限被拒绝 这是我当前的脚本,让多个用户login到一个页面,注销,然后返回多less成功/失败。 var casper = require('casper').create() var colorizer = require('colorizer').create('Colorizer'); var userNames = ['username1','username2','username3','username4', 'username5']; var passWords = ['password1','password2','password3','password4', 'password5']; var url = 'http://mywebsitenet.com'; var […]