问题标签 [mechanize-ruby]

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

ruby - 如何让 Ruby Mechanize 获取一个存在于字符串中的页面

一般来说,Mechanize 会从一个 URL 中获取一个网页,get 方法的结果是一个 Mechanize::Page 对象,从中可以使用很多有用的方法。

如果页面存在于字符串中,我如何获得相同的 Mechanize::Page 对象?

0 投票
3 回答
400 浏览

ruby - mechanize 是 Ruby 中用于自动化网站交互的最流行的库之一吗?

mechanize 是 Ruby 中用于自动化网站交互的最流行的库之一吗?

已经有一段时间了,因为我需要自动化一些网站交互并且只是想检查现在没有一些更常用/更新的替代方案......

0 投票
5 回答
5895 浏览

ruby - 在 Ruby 中使用机械化选择列表

我正在尝试使用 Mechanize 和 Ruby 设置选择列表的值。我可以使用选择列表导航到页面,使用 .form 方法获取表单,然后找到选择列表。

正确返回正确的对象。

但是,我仍然无法设置该字段的值!我试过了:

但是当我这样做时:

值字段仍为空。

有什么我想念的吗?尖端?诡计?比http://mechanize.rubyforge.org上的更好的机械化文档?

谢谢!

编辑:相关的 HTML 是:相关的 HTML 是:

0 投票
2 回答
3552 浏览

ruby-on-rails - 如何防止错误“找不到代码转换器(UTF-8)”?

我在生产环境(CentOS 5.6)中遇到此错误,但在开发环境(Ubuntu 11.04)中运行良好。在这两种环境中,该应用程序都使用 Ruby 1.9.3 和 Rails 3.0.9,并由乘客和 nginx 提供服务。我的机械化宝石版本是 2.3。

code converter not found (UTF-8)

此代码的最后一行触发它:

有任何想法吗?我config.encoding = "utf-8"的application.rb中有。

0 投票
1 回答
1399 浏览

ruby - 红宝石::机械化::cookie_jar

我有一个网站可以进行四种不同的重定向,并且似乎并不总是传递 cookie。

因此,我在这里进行了研究并尝试了一些解决方案,例如:

创建一个临时 cookie_jar 并每次分配它。我还尝试像这样手动传递 cookie:

上面的问题是,如果它不需要通过,我会得到一个错误。
是否可以执行以下操作。似乎通过了 10-12 个不同的 cookie 值,每个页面都有一些(重定向)或其中一些。如何执行上述操作并手动传递 cookie,但如果该值不存在,则只需传递 null?

还是有更好的方法来做到这一点?

0 投票
3 回答
12492 浏览

ruby - 在 Mechanize 中单击带有 JavaScript 的链接

我有这个:

我想单击该链接,但在使用 link_to 时出现错误。

我试过了:

我得到的错误是: NoMethodError: undefined method `[]' for nil:NilClass

0 投票
1 回答
2269 浏览

ruby-on-rails - 使用 Ruby Mechanize 进行解析

我正在尝试使用 Mechanize Gem 解析网站。到目前为止,这就是我所拥有的:

我得到了这个产品的元素:

但是,当我尝试获取 href 时,我返回 nil:

0 投票
2 回答
1952 浏览

ruby-on-rails - 如何从 Mechanize::File 对象转换为 Mechanize::Page 对象?

我有一个登录表单的页面。登录后有一些重定向。第一个看起来像这样:

所以当我在这里做一个 page.class 我得到

我如何将其转换为Mechanize::Page


@pguardiario

为了更好地解释,我将原始消息中的代码存储在 page.

当我做 page.class 我得到 Mechanize::File

那么我执行上面的代码:

所以我这样做:agent.get(page.uri.to_s) 或事件尝试使用任何 url agent.get(" https://www.manageyourloans.com/MYL ") 我收到一个错误:ArgumentError: wrong number of arguments (4对1)

我什至试过这个:

我的问题是,一旦我这样做了,如何将上一页转换为 Mechanize::Page?

0 投票
2 回答
467 浏览

ruby - 是否可以将 Mechanize::File 转换为 Mechanize::Page

我在使用 Mechanize gem 时遇到问题,如何将Mechanize::File转换为Mechanize::Page

这是我的一段代码:

当用户点击链接时,它会转到包含用户列表的页面,现在我想点击第一个用户,但我无法做到这一点,因为链接返回Mechanize::File对象

任何帮助,建议都会很棒,谢谢

0 投票
1 回答
387 浏览

web-scraping - 单击输入标签,而不是表单

mechanize用来刮几页。分页是通过 javascript post 实现的,分页链接实际上是input按钮。这些不包括在表格中。知道如何触发这些点击吗?

我仍在编写脚本,可以使用mechanize-rubymechanize-python。任何一个解决方案都会有所帮助。

按钮的html是: