【发布时间】:2015-06-04 00:26:44
【问题描述】:
我正在尝试从网站上抓取多个页面。我想抓取一个页面,然后单击下一步,获取该页面,然后重复直到我结束。 到目前为止我写了这个:
page = agent.submit(form, form.buttons.first)
#submitting a form
while lien = page.link_with(:text=>'Next')
# while I have a next link on page, keep scraping
html_body = Nokogiri::HTML(body)
links = html_body.css('.list').xpath("//table/tbody/tr/td[2]/a[1]")
links.each do |link|
purelink = link['href']
puts purelink[/codeClub=([^&]*)/].gsub('codeClub=', '')
lien.click
end
end
不幸的是,使用这个脚本,我一直在无限循环中抓取同一页面......我怎样才能实现我想做的事情?
【问题讨论】:
-
你在使用
Nokogiri以外的宝石吗? -
是的,我也在使用 Mechanize
标签: ruby web-scraping nokogiri mechanize