问题标签 [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 投票
3 回答
3865 浏览

coffeescript - 为什么 CasperJS 表单提交不重定向到下一页?

这是我的第一次 casper 测试,所以我仍在努力学习基础知识。我想在我的登录表单上填写用户名和密码,然后提交。然后确认是否在下一页呈现“注销”链接(确认用户已登录)。

但据我所知,当调用then时,url 仍然是相同的。看起来没有帖子或重定向到下一页正在发生。我究竟做错了什么?

所以@getCurrentUrl 的回显都返回相同的URL,这是错误的。

0 投票
1 回答
10323 浏览

javascript - 如何测试 CasperJS 中是否存在选择器?

我知道我可以使用:

但我想实际存储它是否存在于布尔变量中。

即是这样的:

0 投票
1 回答
2735 浏览

phantomjs - 使用 casperJS 登录 Bing 搜索

我一直在尝试创建一个登录脚本来使用 CasperJS 检查我的 bing 奖励积分,我正在查看调试输出,一切看起来都很好,只是它没有成功登录。(所以我账户上的奖励没有显示)。我已经在 chrome 控制台中对此进行了测试,并避免使用 casper.fill ,因为它会刷新登录页面。登录信息是一个工作测试帐户。

0 投票
3 回答
443 浏览

javascript - 数组在递归方法中设置为空

我正在尝试使用用于解析页面和提取相关链接的 CasperJS 编写蜘蛛。有问题的站点具有文件和文件夹的分层视图。我已经编写了一个递归方法来执行文件结构的导航,但是在该方法的第一次迭代之后,我的数组返回 null,即使函数运行正确。任何确定问题的帮助将不胜感激。

谢谢

0 投票
4 回答
4584 浏览

casperjs - casperjs下载文件而不指定url

有没有办法在不指定下载 URL 的情况下使用 casperjs 下载 CSV 文件?我正在尝试下载单击下载按钮时动态生成其 URL 的 CSV 文件。因此,在这种情况下,我可能无法很好地使用 download()。

0 投票
1 回答
2416 浏览

jquery - 是否可以像在 selenium 中一样模拟 casperjs 和 phantomjs 中的拖放?

我正在尝试模拟在我的站点中使用 JQuery 完成的拖放事件。用我自己的JQuery“工作”手动执行“拖放”,但是在提交拖放事件所在的表单后,什么都不会发生,因为鼠标拖放事件附加了事件侦听器,并且这些听众不会被我的“手动”动作触发。我正在寻找类似于Testing jQuery Drag & Drop and Droppable with Selenium的东西。

这是一个仅在视觉上起作用但不会触发拖放事件处理程序的代码示例:

0 投票
1 回答
7863 浏览

casperjs - Casperjs 不能动态打开网址?

我正在尝试导航到从脚本本身创建的 url。

此示例代码无法按(我的)预期工作。不知道为什么:(

结果是第二页没有加载:

0 投票
1 回答
2416 浏览

javascript - 如何在 Windows 7 上使用 NodeJS / PhantomJS / CasperJS

我需要抓取具有 AJAX 和 SESSIONS 的网站表单(即时)。我做了很多研究,发现了几种可能的解决方案,其中之一是 Python::Mechanize。我不知道python和cURL PHP(据我了解)无法处理AJAX或提交表单。

我发现我认为可能的堆栈可以引导我走向优雅:)。问题是我根本不知道如何使用这些包。

  1. 我下载并安装了 NODEjs,我可以从 cmd 调用它。(伟大的)

  2. 我下载并安装了 PhantomJS(不知道如何设置它PATH以便它是动态的,所以我必须手动cd在 CMD 中DIR加载它)如何在 Windows 7 中设置它?不知道在哪里指向路径。

  3. 下载的 CasperJS - 放入 DIR

因此,在 phantomjs 上,我能够运行一个在 CMD 提示符下回显“hello world”的测试文件。现在我在这里不知道如何进行。- 最终我需要它从我的网络服务器(即时)运行 - 所以它需要在我的网页中实现。到目前为止,我只想从 CMD 运行它并让它进入页面,提交表单,抓取结果并将其写入文件。

有人可以解释一下我如何做到这一点的工作流程吗?

CasperJS -> 显示了这个表单示例。我想用我的变量来实现,运行脚本并保存结果。

0 投票
2 回答
4056 浏览

javascript - CasperJS 动态选择列表

需要帮忙

我正在从该网站上抓取数据,该表单包含三个相互连接的选择列表,如果选择第一个选择列表中的任何选项,则调用此函数onchange="Javascript:submitForm2();并填充第二个选择列表。

随后,如果选择了第二个选择列表中的一个选项,则会调用相同的 js 函数onchange="Javascript:submitForm2();",最后,此表单的两个提交按钮分别调用不同的 js 函数来填充结果。所以我查看了文档,但没有找到任何关于选择列表的信息。

三个相互连接的动态变化的选择列表

<select name="s1" onChange="Javascript:submitForm2();" style="width: 150px" width="150"> <select name="s2" onChange="Javascript:submitForm2();" style="width: 300px" width="300"> <select name="s3" style="width:300px" width="300">

表单有两个提交按钮

尝试使用这些代码this.click('select#s1 option[value="26"]'); this.debugHTML();

给我这个错误CasperError: Cannot dispatch click event on nonexistent selector: select#s1 option[value="26"]

我也试过document.querySelector('select[name="s1"]').setAttribute('value', "26");TypeError: 'null' is not an object (evaluating'document.querySelector('select[name="s1"]').setAttribute')

0 投票
4 回答
35237 浏览

javascript - 使用 CasperJS 将结果写入文件

如何在文件系统中创建文件并将其内容this.getPageContent()放入其中?