使用一个变量但不使用数组的机械化解析器

时间:2015-06-11 13:23:18

标签: ruby html-parsing mechanize

我发送以下内容通过机械化填充网站上的搜索框。

@codes = ['123', '456']

这是我的机密代码:

@codes.each do |x|
  mech = Mechanize.new
  aliases = ['Linux Mozilla', 'Mac Firefox', 'Mac Mozilla', 
   'Windows Mozilla', 'Linux Firefox', 'Mac Safari', 'Linux Konqueror']
  aliases.shuffle!
  mech.user_agent_alias = "#{aliases[0]}"
  mech.get('http://www.a_url.com')
  mech.page.forms[0]["field-keywords"] = "#{x}"
  mech.page.forms[0].submit
  try = mech.page.link_with(:text => "Product Details").click
  url = try.parser

当它到达此处时,它可以使用一个代码,但会使用@codes中的多个代码中断:

match_on = "colorImages': "
end_on = ", "
pic_1 = /#{match_on}.*?#{end_on}/m.match(url).to_s

无法弄清楚原因。

1 个答案:

答案 0 :(得分:0)

修正了..这是我传递字符串变量而不是解析器或Mech的方式。