0

我正在尝试单击带有 Mechanize gem 的链接列表,但显然 Mechanizelinks_with(criteria)没有根据标准正确过滤。出于调试目的,我只打印出链接。

以下脚本打印出页面上的大多数(全部?)链接:

require 'mechanize'

agent = Mechanize.new
url = "http://www.fearlessphotographers.com/location/470/sul-do-brasil"

agent.get(url)
agent.page.links_with(:text => /[VIEW FULL PROFILE]/).each do |link|
    puts link.text
end

如果我将其更改为(:text => /[VIEW FULL PROFILE]/)(:text => "VIEW FULL PROFILE")则根本不会打印任何链接。

我不明白我做错了什么。有什么想法吗?

4

1 回答 1

1

括号[]在正则表达式中具有特殊含义。你需要用 slashie 逃脱它们/\[\]/

再想一想,这些链接中没有括号,所以将它们排除在外。

page.links_with :text => /View Full Profile/

另请注意,文本似乎使用 css 变为大写()。

于 2013-12-03T01:44:11.503 回答