问题标签 [phantomjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3357 浏览

phantomjs - 加快 phantomjs 屏幕捕获时间?

在运行 PhantomJS 提供的 rasterize.js 示例时,我发现我必须等待 20 秒或更长时间才能生成网页图像。

有没有可能在不消耗大量资源的情况下加快速度的方法?我基本上希望快速生成从加载了 PhantomJS 的网页中捕获的一系列连续图像。如果我能以某种方式将 Phantomjs 输出到视频流中,那就太好了。

现在我会寻找一些只用 PhantomJS 在 1~2 秒范围内截取网页截图的东西。如果已经有一个项目或库可以做到这一点,那也很棒。

0 投票
2 回答
6533 浏览

javascript - phantomjs 总是在 Windows 上给出解析错误

这听起来像是一个愚蠢的问题,但我似乎完全不知道为什么

我下载了 Windows 二进制文件并遵循快速入门说明并尝试使用示例,但是无论何时我在控制台中输入任何内容,我总是会收到“解析错误”

我试过了:

和一些示例脚本,我总是得到“解析错误”

hello.js 文件只有这个

console.log('Hello, world!');

phantom.exit();

我不知道出了什么问题...任何帮助将不胜感激...我敢肯定这会变得很愚蠢,因此感谢您的宝贵时间!谢谢

0 投票
1 回答
266 浏览

javascript - Phantom.js 不能从 OSX 控制台运行

我正在开发一个 ExtJS 应用程序,我想使用 Phantom.js 将视图呈现为 pdf。我已经下载了 OSX 的二进制包,解压后添加了一个符号链接并将其添加到 PATH 中。在控制台中运行“phantomjs”后,我得到:

就这样。当我尝试运行任何示例脚本时,它会崩溃说require is undefined,我无法检查版本,基本上它是不可用的。我可以运行 bat 文件,它给了我 phantomjs shell。删除我之前下载的所有内容后,我仍然可以运行具有相同结果的“phantomjs”命令。可能是因为 Sencha 的 SDK 有它,但它在 PATH 中不可见,所以我不确定。有任何想法吗 ?

0 投票
0 回答
2224 浏览

installation - 在 ubuntu 11 上安装 phantomjs

我遵循了两个安装指南,这个:http ://code.google.com/p/phantomjs/wiki/Installation

这个:http: //yoodey.com/comment/10803

两次,问题是 bin 目录应该包含一个名为 phantomjs 的文件,但它没有。对于第一个指南,它只包含一个 Info.plist 文件,而在第二个指南中,bin 是空的。

0 投票
3 回答
4162 浏览

phantomjs - 无法让 PhantomJS 使用一个简单的示例

我已经下载了可执行文件并创建了一个指向 /usr/local/bin 的 simlink。

我在 Mac OSX 10.7 下

然后,当我尝试运行需要某些模块的脚本时,即

我有一个错误

好像'require'不被视为保留字,而是被解释为变量符号。

(顺便说一句,每当我吃午饭时,我的 Dock 中都会出现一个 Sencha Touch 图标)

0 投票
1 回答
1443 浏览

unit-testing - 在使用 phantomjs 和 jasmine 进行单元测试时拍摄网页快照

我似乎无法让 jasmine 和 phantomjs 正常工作。我正在使用 phantomjs 的示例文件夹中的 run-jasmine.js 文件。我得到的问题是文件找不到系统,所以它不能要求它。

这是具体消息:

最重要的是,我想知道如何使用 jasmine 对 html 文件进行 dom 操作。

编辑:看起来 DOM 问题很简单,因为它只是使用 phantom js 的无头浏览器功能。我仍然有系统问题,我想知道如何在每次测试之间调用渲染页面,而不是在页面加载完成时调用。

0 投票
2 回答
1159 浏览

javascript - 从本地 js 脚本到本地 Phantom.js 服务器的 Ajax 调用

我已经设置了一个本地运行的 Apache 服务器来托管我的 Web 应用程序(用 ExtJs 编写)。我还有一个用 phantom.js 制作的第二个本地服务器,并在端口 8080 上监听:

现在我想从我的应用程序向幻像服务器发出 Ajax 请求:

但是当运行这个脚本时,我得到:

"NetworkError: 400 Bad Request - http://localhost:8080/?_dc=1336648497292"在控制台中。此操作是否违反同源策略?或者是别的什么 ?转到 localhost:8080 显示正确的响应,因此服务器运行正常。

0 投票
3 回答
1160 浏览

javascript - 如何将在服务器上运行的页面生成为 PDF

这项任务并不容易,因为我需要在单击按钮后创建页面的 PDF 版本。它具有复杂的dom结构,许多元素绝对/相对定位,并且数据是动态加载的。我考虑过使用 Phantom.js 服务器来完成这项任务,因为它可以生成 PDF,但这会带来一些问题;

  • phantomjs 可以从控制台运行(这是不可能的,因为生成 PDF 必须在 UNIX 和 WIN 系统上都可用,并且只能从页面运行 shell 脚本)或使用它内置的服务器
  • 服务器与运行页面的服务器具有不同的域,因此出现了相同的源策略问题。我正在考虑使用带有 phantomjs 服务器地址的 iframe 作为 src 和我的页面 html 传入参数,但参数太长并返回 413 错误。JSONP 不起作用,因为它是为 GET 请求构建的,并且出现了参数过长的相同问题。

我也考虑过在客户端生成它,但由于网站的复杂性,我可能需要很多天才能获得页面的正确表示(因为所有定位值都需要重新计算为 pts),而且它必须是一个通用的解决方案。

任何其他想法如何解决这个问题?

0 投票
3 回答
5912 浏览

javascript - 如何使用 PhantomJS 测试网页是否返回 404/500?

我是 PhantomJS 和 Javascript 的新手,我正在编写一个测试加载时间的脚本,我希望它能够检测在测试时是否遇到错误 404/500,并在 console.log 中显示和消息. 代码如下:

非常感谢您的帮助。谢谢

0 投票
2 回答
2697 浏览

javascript - PhantomJS 使用返回 null 的基本身份验证进行评估

我正在尝试在具有基本始终身份验证的页面上使用 PhantomJS,例如,此页面

http://alexturpin.net/auth ( test:rosebud)

使用以下代码

我得到这个输出

无论我尝试什么,evaluate都会继续返回null,即使页面似乎因为status包含而打开得很好"success"

如果我决定打开一个没有基本身份验证的页面,例如http://alexturpin.net/noauth,我仍然会得到相同的结果。只有当我最终在打开页面之前完全删除身份验证设置时,它才会起作用。

身份验证设置的使用似乎与evaluate. 这是 PhantomJS 中的错误,还是我错过了什么?