一个Nokogiri佣金任务可以抓取所有Groupon的交易?

问题描述 投票:0回答:1

我想使用Nokogiri抓取Groupon交易。我想在以下链接中抓取所有这些交易:http://www.groupon.com/getaways?d=travel_countmein

最重要的是,我想访问每个单独的链接,并刮取标题和价格。从概念上讲,有没有办法编写一个单独的瑞克任务来做到这一点?

我知道必须要有某种循环,但我不知道如何从逍遥游的主要页面解析每个交易的网址。

我已经为标题和价格写了一个刮板:

task :fetch_travel => :environment do

require 'nokogiri'
require 'open-uri'

url = "http://www.groupon.com/deals/ga-flamingo-conferences-resort-spa?c=all&p=0"
doc = Nokogiri::HTML(open(url))


title = doc.at_css("#content//h2/a").text
price = doc.at_css("#amount").text[/[0-9\.]+/]
link = doc.at_css("#content//h2/a")[:href]
desc = doc.at_css(".descriptor").text

Traveldeal.create(:title => title, :price => price, :url => link, :description => desc)

end
ruby-on-rails nokogiri
1个回答
-1
投票

发现这需要嵌套循环,其中内部循环是上面的代码,而外部循环将解析要在内部循环中使用的url的每笔交易。

© www.soinside.com 2019 - 2024. All rights reserved.