问题标签 [www-mechanize-firefox]

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 回答
78 浏览

perl - 机械化 Firefox 同步选项不起作用

我正在尝试使用 Mechanize::Firefox 但它在第一次点击后挂起。当您传入对象以单击时,它似乎没有遵守同步标志。有任何想法吗?这是一个错误还是我做错了?

0 投票
1 回答
1044 浏览

perl - Perl Par::Packer 找不到模块问题

我有一个WWW::Mechanize::Firefox在 windows 7 32bit 上使用草莓 perl 的 perl 程序。

它适用于命令C:\>perl testcase.pl。当我用它编译它时,C:\>pp -o testcase.exe testcase.pl它编译时没有错误。

当我运行它时,testcase.exe它给了我错误:

我使用的代码testcase.pl是:

另请注意,没有WWW::Mechanize::Firefox和的程序MozRepl可以正常工作。问题显然已经缩小到PAR::Packer不喜欢MozRepl,知道它可能是什么吗?

0 投票
1 回答
498 浏览

perl - 当有三个时,如何使用 WWW::Mechanize::Firefox 设置值具有相同名称的标签?

我正在使用WWW::Mechanize::Firefox自动化与网页的一些交互。Evertyhing 运行良好,直到我到达我希望脚本在框中输入特定值的页面<input...>。不幸的是,此页面包含三个<input...具有完全相同名称的框:

perl 脚本中用于填充该值的行是

由于名称search_term不能准确识别一个<input>标签,因此脚本会停止并显示以下错误消息:

那么,有没有办法指示<input>我要填写三个中的哪一个?

编辑

ThisSuitIsBlackNot指出,根据文档,我应该能够设置第三个参数来指示我指的是多个匹配元素中的哪一个。显然,这第三个参数被忽略,因此

仍然停止并显示与未明确设置第三个参数相同的错误消息。

0 投票
1 回答
338 浏览

javascript - Perl 根据元素 ID 填写表单

我正在尝试使用WWW::Mechanize来填写表格。不幸的是,我的页面需要 JS,所以我现在正在使用WWW::Mechanize::Firefox.

这是我要填写的元素。

set_field ()函数采用元素名称。我如何给它一个元素 ID(ember 745)并让它填写表格?

到目前为止,这是我的代码

0 投票
1 回答
261 浏览

html - 如何在 Firefox::Mechanize 中触发 onchange 事件?

我正在使用 Firefox::Mechanize 来抓取网站。我被困在一个下拉菜单上,该菜单有一个与之关联的 onchange 事件。

我可以从下拉菜单中选择我想要的选项,并且我可以验证这一点,因为下拉菜单现在显示了我选择的选项。但它不会触发与之关联的 onchange 事件。

我想在选择我的选项后我可能需要一个“点击”事件,但我不确定如何整合它。

这是HTML的一点:

这是我的脚本:

提前致谢。

0 投票
1 回答
66 浏览

perl - 使用 WWW::Firefox::Mechanize 在字段中输入文本

我正在使用WWW::Mechanize::Firefox在网站上执行一些自动化任务。

现在我面临的问题是我需要模拟将字符输入到<input type="text">字段中。这是因为键入会导致站点对网络服务器进行一些 AJAX 调用。

那么,有没有办法使用 W::M::F 让它输入键入字符。

0 投票
0 回答
64 浏览

javascript - Perl Mechanize firefox 点击事件获取脚本挂起

在使用 Perl Mechanize Firefox 时,我试图通过单击页面上的图像来下载文件,我可以看到文件已在浏览器中下载,但脚本在控制台中挂起并且无法继续。

这是我的代码:

然而,这会下载文件,但脚本仍然停留在此处。

请帮助我度过难关。

0 投票
0 回答
209 浏览

facebook - 如何使用 WWW::Mechanize::Firefox 将文本输入 Facebook 的事件表单?

Facebook 没有用于向 Facebook 页面提交事件的 API。所以我试图在这个脚本中使用 WWW::Mechanize::Firefox。

Facebook 生成的表单并不便于将数据输入到文本字段中。如最后一行所示,这些字段没有名称属性,并且无法使用 css 选择器区分它们(尽管可以使用 xpath 选择它们)。

因为无法在字段中输入文本,Facebook 会抛出错误,因为即使我使用$mech->field.

有没有办法将文本输入 Facebook 的表单以添加事件?

更新 我在这方面取得了一些进展。我至少能够使用以下代码Event nameLocation

不幸的是,当我使用此代码单击“发布”按钮时:

和文本字段被清除Event NameLocation就好像没有输入任何内容一样。不知道此时还可以尝试什么。

0 投票
0 回答
284 浏览

javascript - 使用 MozRepl 和 Perl (WWW::Mechanize::Firefox) 执行 JavaScript 函数

我正在使用以下 Perl 片段来执行使用 MozRepl 的 JavaScript 函数。但是,我收到错误消息“MozRepl::RemoteObject: TypeError: myFunction is not a function at test.pl line 16”。我究竟做错了什么?

0 投票
1 回答
594 浏览

windows - 在 @INC 中找不到 MozRepl.pm(您可能需要安装 MozRepl 模块)

我正在尝试使用 Mechanize Firefox 登录到具有 Javascript 登录的网站。该程序在 Ubuntu 上运行良好,但是当我在 Windows 上运行时,出现以下错误。

我在 Windows 7 64 位上运行该程序,并使用 Active Perl。

我已经使用 cpan 安装了以下模块并运行了 Mechanize Firefox 的测试,结果是成功的。

  • MozRepl
  • MozRepl::RemoteObject
  • 万维网::机械化::火狐