我正试图点击带有机械化宝石的链接列表,但显然机械化的links_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")
,则根本不会打印任何链接。
我不明白我做错了什么。有什么想法吗?
括号[]
在正则表达式中具有特殊含义。你需要用一个斜杠/[]/
逃离他们。
仔细想想,这些链接中没有括号,所以把它们去掉。
page.links_with :text => /View Full Profile/
还要注意的是,文本似乎正在用css处理uppercase()。