can';t使用phantomjs 1.9将传单SVG矢量层渲染为png

我正在使用传单API构建一个映射应用程序 我想使用phantomjs生成地图的静态截图 例如,尝试呈现此页面时: 使用 phantomjs示例/rasterize.js test.png 导致图像缺少SVG覆盖。我曾在Windows7和FedoraCore15下使用预构建的二进制文件进行过尝试。此外,我在FedoraCore15下从源代码编译了它。两个平台上的所有构建都产生了相同的行为 是否有人使用phantomjs成功地将传单地图渲染到PNG 谢谢。我刚刚遇到了同样的问题,增加超时(至少到5

Phantomjs CasperJS可以访问一个系统上的浏览器元素,但不能访问另一个系统上的浏览器元素

我对CasperJS(版本1.1.0-beta3)和PhantomJS(版本1.9.2)有问题。我在我的工作机器上写了一个脚本,它运行得很好。不过,我希望这个脚本在另一台机器(测试机器)上运行,所以我在服务器上创建了一个SVN repo,并从测试机器将一个网络驱动器映射到它。在repo中,我有我的脚本、提取的CasperJS zip的内容和phantomjs.exe。我还更新了测试机器上的系统路径变量 我在本地机器上映射了相同的网络驱动器,在那里它以前运行良好。它在那里仍然运行良好,即使是从网络

如何为mocha phantomjs设置测试

我在mocha phantomjs的每个教程中都会看到一个测试工具html文件和一个单独的javascript文件 这是每次测试的正确方法吗?我想为我的网站中的每个页面创建一个单独的测试,但为每个测试用例复制一个html文件似乎有些过分/疯狂 Granged,这是我第一次尝试使用mocha phantomjs,但是,为每个测试用例创建一个html文件和一个js似乎真的很奇怪 做这类事情的标准是什么?我已经在谷歌上搜索了大约一个小时,找不到任何好的例子。我知道这看起来很奇怪,但是。。。对 您需要/

PhantomJS不在OS-X上工作

我最近将操作系统从El Capitan升级到Sierra。现在我无法运行JS单元测试套件,它在控制台中给出了以下错误 [exec] INFO [framework.browserify]: bundle built [exec] INFO [karma]: Karma v0.12.35 server started at http://localhost:9876/ [exec] INFO [launcher]: Starting browser PhantomJS [exec] ERR

Phantomjs 未定义的方法“get';零级:零级

我们需要一些帮助来找出我们在测试中遗漏了什么。我们正在尝试运行headless phantomjs测试,并得到错误: nil:NilClass的未定义方法get' 你是说?得到 拿到钥匙 宝石(命名者) features/welcome\u登录。feature:4:在中,如果我导航到“” env.rb=

加快phantomjs屏幕捕获时间?

在运行PhantomJS提供的rasterize.js示例时,我发现我必须等待20秒或更长时间,直到生成网页图像 有没有任何可能的方法可以在不消耗大量资源的情况下加快速度?我基本上是想快速生成从装有PhantomJS的网页上捕获的一系列连续图像。如果我能以某种方式将PhantomJ输出到视频流中,那就太好了 现在,我想用PhantomJS在1~2秒内找到一个网页截图。如果已经有一个项目或库可以实现这一点,那也太好了。如果您的图像URL被硬编码为html响应,那么您可以执行以下操作: 获取html

Phantomjs CasperJS:禁用远程页面';s javascript,但仍然使用casper.evaluate?

感谢您阅读我的主题,如果有人能提出任何其他我应该探索的途径来实现以下目标,我将不胜感激 使用CasperJS或PhantomJS,我需要禁用属于我导航的页面的所有JavaScript,使其不被执行,同时仍然能够使用casper.execute运行我自己的JavaScript 有人知道我能做这件事的方法吗 是否可以使用onResourceRequested或onResourceReceived修改HTTP头或正文?或者有条件地取消请求?还是只读 在提供原始HTML源进行解析之前,您可以修改它吗

使用PhantomJs获取Iron.io worker的输出

我正在编写这个应用程序,它使用来自网站的一些信息,我正在使用PhantomJs来提取这些信息。现在,我希望用户能够运行我的应用程序,而无需在他们的系统中使用PhantomJs。这样更像是一个服务电话 我遵循了以下指南: 为了让PhantomJs工作并获得我需要的某些站点的信息,现在我可以使用Iron.io的web界面将工作人员排队并在日志中获得结果 我想知道是否有办法以编程方式获得执行结果。我已经查看了,但我需要进行身份验证,还需要提供不同的任务ID(我不知道如何获取)。Queue task=>

Phantomjs编写完全透明的图像

我的Debian服务器上的Simplerasterize.jsscript(来自phantomjs示例)有时会写入完全透明的图像(如果是PNG),但它有规则的维度。这种情况大多数时候都会发生,但很少有时候会形成正确的形象。 我不知道为什么会这样 我的系统: Debian GNU/Linux 7.2 (wheezy) with ext4 Phantomjs 1.9.2 rendering sites: http://www.yahoo.com/ and http://phantomjs.org/

PhantomJS通配符文件删除

我已经在网上搜索过了,但不幸的是,我找不到我想要的答案。PhantomJ支持通配符删除吗?这就是我在他们网站上找到的例子 var fs = require('fs'); var toDelete = 'someFile.txt'; fs.remove(toDelete); phantom.exit(); 但这不是我想要的。我想删除多个相同类型的文件。例如,假设我想删除此目录的所有(*.png)png。请帮助。我认为在PhantomJS文件系统模块中没有类似glob的方法,但是您可以简单地读

Phantomjs 如何在casperjs中单击浏览器提示

我正在创建一个自动化脚本来进行测试。因此,当我的脚本试图通过单击“注销”来注销时,它会提示确认窗口,脚本必须在该窗口中选择“确定” Source page looks likes: <script type="text/javascript"> function logOut() { if (confirm("Are you sure you want to log out of the system?\nClick OK for Yes

在phantomjs中获取页面宽度很奇怪

以下是脚本代码: var page = require('webpage').create(); page.paperSize = { format: 'A4', orientation: "landscape" }; page.open('http://www.google.com', function () { var arr = page.evaluate(function () { var pageWidth = document.body.clientWi

Phantomjs CasperJS找不到明显存在的文件

这实际上最初是由我运行SpookyJS时遇到的一个问题产生的,但成功地将其归结为底层CasperJS的一个问题(并且基于我被引导到的另一个stackoverflow问题,甚至可能是一个PhantomJS问题) 我们确定CasperJS命令失败的原因是: casperjs C:\wwwroot\dra\node_modules\spooky\lib\bootstrap.js --spooky_lib=C:\wwwroot\dra\node_modules\spooky\lib\ --command

可靠地检测基于PhantomJS的垃圾邮件机器人

是否有任何方法可以始终如一地检测PhantomJS/CasperJS?我一直在处理大量使用它构建的恶意垃圾邮件,并且基本上能够基于某些行为来阻止它们,但我很好奇是否有可靠的方法来知道CasperJS是否正在使用,因为处理不断的适应变得有点烦人 我不相信使用CAPTCHA。这是一种负面的用户体验,ReCaptcha从未在我的MediaWiki安装中阻止垃圾邮件。由于我们的网站没有用户注册(匿名讨论板),我们需要为每一篇文章提供验证码条目。我们每天都会收到几千条合法的帖子,一个验证码就会看到这个数字

Phantomjs 如何在CasperJS中启用java插件?

我尝试测试一个需要java插件的站点 使用此代码 casper.test.comment('-> Loading page'); casper.start('http://localhost:8080', function() { casper.test.comment('-> Capture : homeURL loaded.png'); casper.capture('homeURL loaded.png'); }); casper.run(function(){

找不到模块';卡斯珀';当通过PhantomJS调用时

我在C:\xampp\htdocs\phantom中安装了PhantomJS,也在C:\xampp\htdocs\casper文件夹中安装了CasperJS 当我尝试使用phantomjs test.js命令在casper站点上运行这些示例代码时: var casper=require('casper').create(); 卡斯珀,开始http://google.fr/'); casper.thenEvaluate(功能(术语){ document.querySelector('input[n

phantomjs屏幕截图在不同的机器上有所不同

我已经在本地开发人员机器上创建了一个集成测试。 使用Vaadinestbench,我创建了一个屏幕截图,应该用作参考屏幕截图。 在将参考截图上传到svn并使用jenkins验证构建之后,我得到了一个稍微不同的图像,因此测试失败 看起来字体不同,但我安装了相同的字体,网站指定了要使用的字体。 当然,我无法验证使用的字体是否完全相同 这是一张示例图片(请忽略紫色边框): 你知道如何使截图完全相同吗 多谢各位 托拜厄斯你为什么不能验证使用的是什么字体?右键单击对象,然后查看指定的字体以及是否在服务器

Phantomjs CasperJS-CPU使用问题

最近,我在服务器上使用CasperJS执行特定的自动化任务。 发现了一个大问题——有时CPU的使用率会超过30%。 我对它玩了很多,搜索了很多信息,甚至找到了两篇关于这个主题的帖子: 和 但不幸的是,这两种情况都没有相关的答案 重要- 为了减少CPU使用量,我不加载映像,而是使用同一个Casper实例执行所有任务。 但CPU使用率似乎仍然很高 也许有人有办法改进它? 或者至少我不应该在CasperJS中使用哪些函数?这可能与CasperJS无关,而是底层浏览器的“问题”:PhantomJS

在PhantomJs Config:SSL协议中添加参数

我将PhantomJs作为maven模块添加到我的项目中,以测试Projet的状态,即使在修改之后也可以确保我没有做任何修改。 编译maven模块时,我的项目中的https链接有问题: --- frontend-maven-plugin:0.0.26:grunt (grunt build) @ ess-cms-content --- [INFO] Running 'grunt phantomcss --no-color' in /path/to/directory [INFO] Running

动态更改PhantomJS中的viewportSize

为了让PhantomJ以不同的视口宽度创建页面的屏幕截图,我想动态地调整它。但是,这不起作用: var system = require('system'); var page = require('webpage').create(); page.viewportSize = { width: 800, height: 600 }; page.open('http://example.com', function (status) { page.render('medium.pn

Phantomjs CasperJS和从mediawiki自动导出xml

我正在尝试使用casperjs自动导出媒体wiki xml,因为我们无法通过托管它的机器进行访问。问题是将xml下载为post请求,而响应是xml。目前我有以下内容(另一个票证在堆栈溢出时带来了此代码) 我要做的是: casper.start(); casper.open('http://url_to_mediawiki', { method: 'GET', headers: { 'Content-Type': 'application/

Phantomjs casperjs单击第二个匹配选择器

有一些按钮共享casperjs无法分类的相同id或类,我想单击第二个或N选择器匹配,我可以使用: document.querySelectorAll('[id="something"]').click(); 但我必须使用以下基本格式: casper.then(function (){ this.click(id="something"); }); 或者。不管怎样,我是否可以让下面的陈述起作用 var clickthis= '[id="something"]'; document.qu

Karma Jasmine PhantomJS-PhantomJS在60000毫秒内未捕获

在JSON包中,我尝试了很多不同版本的karma phantomjs启动器,phantomjs,包括phantomjs预构建 当前包JSON “依赖性”:{ “茉莉花芯”:“^2.5.2”, “因果报应”:“^1.6.0”, “因果报应茉莉”:“^1.1.0”, “karma phantomjs启动器”:“^0.1.1”, “幻影”:“^1.9.20” } 在所有情况下,我都会得到“PhantomJS在60000毫秒内未捕获”的消息,它会尝试两次,然后放弃 我在Windows10上,从WebSt

我想使用断点调试phantomJS

我使用的是phantomjs,但是当我只打开一个指定的网页时,出现了以下错误 ReferenceError: Can't find variable: CollectGarbage undefined:1 :0 in openUrl phantomjs://platform/webpage.js:291 in open phantomjs://code/memory_test.js:77 phantomjs://code/memory_test.js:94 但是我已经检查

Phantomjs 将getFormElement的输出与CasperJs中的字符串进行比较

我一直在尝试测试一个网页,看看一个功能是否有效。我尝试这样做的方式是将getFormValues的输出与该功能正常工作时的字符串进行比较。我编写了以下任务进行检查: casper.then(function seeifsaveworked() { if (this.getFormValues('.tf-field-inner') === 'foobar') { this.echo("SUCCESS: The site description has been succes

phantomjs-加载页面后运行render,但加载不会触发

我正试图用phantomjs创建一个图形到png的转换器,但很难让它正常工作。我看到的几乎每一个例子都使用一些外部URL,就好像你对它所做的一切都是刮取,而且文档非常缺乏 为了进行测试,我创建了一个非常简单的d3函数,其中添加了一个标记和一个蓝色圆圈。查看SO上的其他问题和示例,我将其连接到onLoadFinish,但该事件从未触发 我猜我需要打开页面,但是打开只使用了一个url,这对我来说并不相关(再说一遍,文档完全缺乏信息。即使我看到我认为可能相关的东西,我的。这是) 这是我的密码: var

升级版本0.8.0后gulp mocha phantomjs出现问题

升级到gulp mocha phantomjs版本0.8.0后,我遇到了一些问题: 1)通过url对远程服务器运行时出错: Unsafe JavaScript attempt to access frame with URL about:blank from frame with URL file:///D:/MyDev/ljs_app/trunk/periscope/build/node_modules/gulp-mocha-phant mjs/node_modules/mocha-phant

安装phantomjs的旧版本

我想安装phantomjs(1.9.1)的旧版本。如果我跑 brew install phantomjs 它将安装新版本(2.0.0)。您可以在存储库中找到受支持的早期版本。1.9.1没有公式,但您可以使用brew安装自制/versions/phantomjs192安装1.9.2。(如果您确实需要,可以为1.9.1提供一个。)您可以使用brew search phantomjs查找版本化公式。请尝试以下命令: brew install https://raw.githubusercontent

Phantomjs casperJS向本地主机发送ajax请求,但未发送post req

本地主机被击中,但什么也没发生。console.log(req)时没有请求 首先,编写路由函数就像编写中间件一样: app.use(bodyParser.json()); app.post('/', function(req, res, next) { console.log(req); res.send('s'); }); app.listen(3000); 我假设您正在尝试发送一个JSON,如果您没有,您应该更改您的正文解析。如果您试图发送JSON,则应修改AJAX,因为

我可以强制phantomjs呈现pdf';与背景图像和颜色一起使用

使用phantom JS 1.9.7,我在将网页打印为PDF时遇到问题 背景色和图像被剥离,而不是与页面完全匹配,如下所示: 感谢关于另一个问题的帖子,以下是答案: body { -webkit-print-color-adjust: exact; } 您可以将CSS样式“-webkit print color adjust:exact;”添加到元素以强制打印背景色和/或图像 请参阅文档: MDN上的这种情况很奇怪。值得注意的是添加!重要信息要正确显示,可能需要颜色和背景定义。谢天谢地,

Phantomjs 理解CasperJS中的求值函数

我想了解在何种情况下,我应该或必须使用evaluate功能 我已经阅读了有关CasperJS的evaluate函数的API文档,但我不确定在哪种情况下应该使用该函数。DOM上下文是什么意思?有人能提供一个例子吗?CasperJS文档很好地描述了它的作用 重述一下:您传递了一个将在DOM上下文中执行的函数(您也可以称之为页面上下文)。您可以将一些原语作为参数传递到此函数,然后返回一个原语。请记住,传递给evaluate的函数必须是自包含的。它不能使用在此函数之外定义的变量或函数 CasperJS

phantomjs光栅化在url参数方面存在问题

我在windows机器上使用标准命令行工具,使用PhantomJS和修改的rasterize.js代码。我遇到的问题是当我传递url时,http://time.com/3274245/e-cigarettes-debate/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+时间/顶层+(时间:+顶层+故事)。我已经重定向了标准输出和标准错误,下面是我通过上面的url得到的结果 标准输出 Usage: rasterize.js UR

使用phantomjs创建隔行扫描图像

所以,到目前为止,我可以拍摄截图、创建图像并保存它们,但我需要将它们交错。。我怎么做?这真的很重要,因为我不想通过使用一些分离的php脚本创建交错的新jpg来降低jpg的质量 它应该简单到: page.render('sites/teste/images/o'+i+'.jpg', {format: 'jpg', quality: '100', interlaced: '1'}); 不,仅使用PhantomJS是不可能的,因为传递给实际渲染函数的唯一附加选项是图像质量() 您可以使用Phanto

Phantomjs Can';在水貂身上找不到链接

我正在尝试使用NodeElement类的findLink()方法查找链接。我正在启动搜索的元素具有以下内部html: <div class="arrow" style="left: 50%;"></div> <h3 class="popover-title">really_confirm_forecast</h3> <div class="popover-content text-center"><div class="btn-g

Phantomjs 量角器“;window.angular未定义;幻影错误

我的所有测试在Chrome或Firefox中运行时都没有问题,但当使用量角器时,我会收到以下错误消息: /usr/local/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/goog/async/nexttick.js:41 setTimeout(函数(){throw exception;},0); ^ 等待量角器与页面同步时出错:“window.angular未定义。这可能是因为这是一个非角度页面,也可能是因为您的测

我无法使用phantomjs重定向页面

我无法使用phantomjs重定向页面 当我试图使用phantomjs将当前页面位置更改为同一网页的其他位置时,页面重定向到登录页面只要将当前对象值更改为新页面,而不是重定向 newPage=page.page[0]请为您的问题添加代码和URL。目前,您的问题还不清楚。我使用phantom js进行自动化,当我单击一个链接时,新页面将在另一个选项卡上打开。因此,我的问题是我无法重定向到该位置。如果没有--cookies文件,在登录时重定向可能会出错。选项。这很有趣!在答案中添加更多细节/一些代

PhantomJS不一致地持久化本地存储

我试图制作一个独立的测试用例来试验PhantomJSlocalStorage行为,但是在我的测试用例中,localStorage似乎不是持久的 以下是PhantomJS脚本: var page = require('webpage').create(); page.open('http://localhost:8080/myapp/test.html', function() { var x; x = page.evaluate(function() { return local

Phantomjs 测试通过时的Codeception屏幕截图

我看到Codeception在测试失败时会截图,如果测试也通过了,有没有办法让它截图 关于信息,我们使用的是phantomjs WebDriver。我找到的最好的文档是 其中有一个描述,允许您在测试的任何给定点截图。看起来它会将所有屏幕截图放在一个目录中,所以最好考虑一个好的命名约定 或者,我们现在让扩展工作起来,它自动执行每个测试步骤的截图过程,并将截图显示在有用的报告中。您可以在configurationacceptance.suite.yml中使用带有选项delete\u successf

夜表+;phantomJS:如何从控制台获取日志

我用夜视进行下一个测试: var page = browser.page.certificats(); page .navigate() .section.search .waitForElementNotPresent('@loader', 1000); .waitForElementPresent('@option', 2000) 在firefox和chrome上,都可以正常工作。对于phantomJS,测试失败,因为它找不到@option。 @option元素是由一些JS

在phantomjs中的li元素上触发单击事件

为什么我的函数在phantomjs中不会触发点击事件,但在chrome浏览器中却会触发?具体说来就是一个li元素 if(page.injectJs("./jquery-2.1.4.min.js") == false){ console.log("jquery Failed") } var sizePicked = page.evaluate(function(){

Phantomjs SlimerJS中的句柄下载对话框

我写了一个脚本,点击一个可以下载mp3文件的链接。我面临的问题是,当脚本模拟单击该链接时,会弹出一个下载对话框,如下所示: 现在,我想将这个文件保存到我选择的某个路径,并使整个过程自动化。我不知道如何处理这个对话框。这是一个改编自的脚本,用于下载文件 在SlimerJS中,可以在onResourceReceived处理程序中使用response.body。然而,为了防止使用过多的内存,默认情况下它不会得到任何东西。您必须首先设置page.captureContent才能说出您想要的内容。将正则

带有查询字符串的URL的PhantomJS页面加载失败

我正在用PhantomJS 2.1.1打开一个本地html文件。我想使用查询字符串向页面传递一个值 这是我的密码: var args = require('system').args; args.forEach(function(arg, i) { console.log(i+'::'+arg); }); var page = require('webpage').create(); page.viewportSize = { width: 1000, height: 800 };

PhantomJS/Javascript:下载网页并写入文本文件

下面的代码是下载网页它的工作很好,但我想保存我把代码写的文本文件老实说,我不知道我怎么可以这样做来保存文件 var url = 'http://stackoverflow.com'; var page = require('webpage').create(); page.open(url, function(status) { if (status === 'success') { var html = page.evaluate(function() {

Phantomjs 第一次水豚试验中的极性误差-特拉维斯

我的测试套件使用Capybara进行特性测试,使用PhantomJS作为无头测试的驱动程序。我们已经开始为我们的CI套件开发Travis,但随着套件的运行,我们仍然会遇到失败(它在本地运行得非常好)。经过进一步的检查,我意识到每次运行的第一个功能测试总是失败的,无论顺序如何(我们的测试是以随机顺序执行的)。失败后,会出现以下错误: Capybara::Poltergeist::StatusFailError: Request to 'http://127.0.0.1:52455/#/log

我如何告诉phantomJS在编译页面时跳过页面的某个部分?

我有一个网站,它使用Zurb的Yeti Launch应用程序来编译我的网站并制作一个dist版本。但是,Yeti在构建站点时失败,因为phantomjs在编译外部javascript文件(addthis插件)时返回(正确的)错误。所以我的问题是,我怎么能告诉phantom跳过几行代码呢?很像HTML中的a 让幽灵生气的那句话: <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubi

让PhantomJs在生成pdf之前等待Ajax请求

使用phantomjs中的示例非常有效 但是,如果url需要发出Ajax请求以加载其数据,会发生什么情况?我是否可以触发自定义事件,以便只在那时生成pdf? (我不想猜测请求将花费多少时间并设置超时)此问题的常见解决方案是等待AJAX请求完成后页面上出现的元素 包括来自的waitFor函数,并等待作为参数传递给waitFor的第一个函数返回true,然后它将运行作为第二个参数传递的函数 page.open("https://example.com/ajaxified/", function (

  1    2   3   4   5  ... 下一页 共 5 页