问题标签 [casperjs]

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 投票
2 回答
771 浏览

parsing - CasperJS:如何设置代理以便 Google Analytics 忽略它

我使用 CasperJS 构建了一个简单的索引器。我希望 Google Analytics 忽略我的代理,因此所有请求都不会成为每天统计数据的一部分。

我应该如何设置 Casper 代理变量(标头)?

0 投票
1 回答
26221 浏览

python - Python 子进程仅在 cron 中返回非零退出状态

我有一个 Python 脚本来管理一系列CasperJS任务并处理结果。它从命令行运行良好,但是当我在 cron 中运行脚本时,出现错误:

在 Python 中,我调用 CasperJS:

我也尝试过shell=FalsePopen但我得到了相同的结果。我还尝试将整个命令设为字符串(而不是列表),但这也无济于事。

在 shell 中运行时,运行'/path/to/casperjs /path/to/doSomething.js args'返回退出代码 0。

我也添加PATH=/usr/bin:/bin:/sbin:/usr/local/bin到我的 crontab 中无济于事。(正如这个问题所建议的那样。)

任何想法为什么我只在 cron 中得到这个错误?谢谢!!

编辑:根据下面的答案,设置shell=False并使stderr=subprocess.STDOUT一切正常......

0 投票
1 回答
2245 浏览

node.js - 将 phantomJS 部署到 node.js 应用程序?

我意识到“在 Heroku 上运行 PhantomJS”是一个相关但略有不同的问题,因为我正在尝试使用节点应用程序。

我在为节点应用程序部署 casperJS(基于 phantomJS)脚本时遇到问题。我尝试通过将 PhantomJS 64 位二进制文​​件放在我的应用程序/bin目录中来部署到 Heroku,但是当我尝试运行 PhantomJS 时出现以下错误:

根据我的阅读,这可以通过安装 QtWebKit 库来解决,但 Heroku 没有安装这个。是否有另一个我可以使用的托管服务提供商或者在 Heroku 上安装这个包的方法?

相关代码:

我已经在 Nodester 上注册了 beta 测试,但他们的文档在这一点上仍然非常有限。

编辑:我可以通过简单地将 PhantomJS 的 lib 文件夹复制到我的节点应用程序的根目录来使其工作。

0 投票
1 回答
894 浏览

coffeescript - 将参数传递给coffeescript中的嵌套函数

函数'start'将用户名和密码传递给函数logIn。问题是我得到:

'ReferenceError:找不到变量:用户名'

问题出现在代码段的末尾。在片段的第二个和第三个“@echo”中,变量“用户名”正确显示。

问题是:如何将参数用户名和密码进一步传递给嵌套函数?

片段:

完整代码:

0 投票
4 回答
2614 浏览

javascript - 纯 JS 的 jQuery ":contains()" 模拟

我正在为 CasperJS 编写脚本。我需要单击包含“1”跨度的链接。在 jQuery 中可以使用:contains('1'),但纯 Javascript 中的选择器的解决方案是什么?

HTML:<a class="swchItem"><span>1</span></a><a class="swchItem"><span>2</span></a>

jQuery 变体:$('a .swchItem span:contains("1")')

UPD CasperJS 代码:

0 投票
1 回答
2871 浏览

javascript - 使用 href/Javascript 访问锚点

在具有附加到 javascript 的 href 的锚点的系统上测试 CasperJS。照常做

上述方法均无效。项目的 Git 存储库表明 Casper 有一个 CasperUtils/ClientUtils 库,该库似乎__utils__有一个 click 方法,这是调用的方式href="javascript:foo()"元素的方法。

但是,我似乎无法弄清楚如何让它运行。

如果有人使用过 CasperJS,并且有关于如何实现的代码示例,我们将不胜感激!

理想情况下,最终结果应该是这样的:

或者,如果你有一个指向我可以运行的测试代码用例的指针,那会让我们看看应该如何实现它。

0 投票
3 回答
5483 浏览

linux - 从 cron 运行 casper.js 脚本

我正在尝试通过 cron 运行 casper.js 脚本。当我手动运行脚本时一切正常,但是当我通过 cron 运行它时,出现以下错误:

我的 crontab 条目是:

30 9 * * * /usr/local/bin/casperjs lib/fsaupload.js arg1 arg2 arg3

我也试过

30 9 * * * python /usr/local/bin/casperjs lib/fsaupload.js arg1 arg2 arg3

这给了我同样的结果。有任何想法吗?我猜这可能是一个path问题,但不知道从哪里开始!

0 投票
1 回答
1148 浏览

php - 使用 casperjs 和 PHP 保存数据

我一直在寻找某种关于如何做到这一点的教程或示例,但要么我不明白解决方案就在我的眼皮底下,要么没有人真正把它放在那里。

我想做的是使用 casperjs 来自动化我在网站上创建帐户的过程。我将提供几个不同的用户名,然后我想在最后输出一个文件,其中包含用于注册的用户名和密码。

如果我不需要使用 PHP 来执行此操作,那也可以。我只是很困惑。谢谢您的帮助。

0 投票
2 回答
5294 浏览

javascript - 在 CasperJS 中使用 XPath 查询获取所有表行并返回它们

我正在使用 Casper.js 来自动执行常规上传。我已经设法上传文件并检查它是否有效,但我想解析如果有错误返回的表,但我得到了错误[error] [remote] findAll(): invalid selector provided "[object Object]":Error: SYNTAX_ERR: DOM Exception 12。这是我的代码的相关部分:

有任何想法吗?

0 投票
1 回答
11006 浏览

javascript - 使用 casper/phantomjs 输出客户端控制台

通过 casperjs 文档,我找不到可以从客户端 javascript 中看到 console.log 的位置。这可能吗?