【问题标题】:Rails scraping of priceRails 刮价格
【发布时间】:2015-12-01 06:22:56
【问题描述】:

我正在开发一个 Rails 应用程序,我必须从链接中获取价格但无法这样做link

mechanize=Mechanize.new
     page = mechanize.get('url') 
     doc=page.parser
     #seller price
     puts doc.css('div.olpOffer div.a-span2 span.currencyINRFallback').text

【问题讨论】:

  • 经过进一步审查,看起来它们是嵌套跨度,价格为 </span>600.00</span></span>。但是,如果您在doc.css(selector).text 中调整选择器并提取整个父项然后从字符串中提取它,您仍然可以访问它(即在最后一个</span> 之后查找> 之前的数字
  • 返回什么?你可能做对了,但只需要拿出价格。如果您编辑您的问题帖子并包含它输出的内容,那么将很容易帮助您了解如何做到这一点。
  • 尝试使用olpShippingPrice 而不是currencyINRFallback 并展示你所得到的......它将包含它。
  • olpOfferPrice...抱歉
  • 这将是在 stackoverflow.com 上提出的另一个有效问题。我也很乐意为您提供帮助。顺便说一句,如果我的回答对您有好处,请考虑将其检查为已回答。 :)

标签: ruby-on-rails ruby web-scraping mechanize


【解决方案1】:

价格嵌套在上面的 span 中。

mechanize=Mechanize.new
  page = mechanize.get('http://www.amazon.in/gp/offer-listing/B00WER132G/ref=olp_page_1?ie=UTF8&qid=1448947981&sr=1-12') 
  doc=page.parser
  #seller price
  puts doc.css('div.olpOffer div.a-span2 span.olpOfferPrice').text

根据 pguardiarit 的评论..

mechanize=Mechanize.new
page = mechanize.get('http://www.amazon.in/gp/offer-listing/B00WER132G/ref=olp_page_1?ie=UTF8&qid=1448947981&sr=1-12')
#seller price  
puts page.css('div.olpOffer div.a-span2 span.olpOfferPrice').text

【讨论】:

  • page.css就行了,page.parser没必要乱来。
猜你喜欢
  • 2011-07-03
  • 1970-01-01
  • 2019-03-03
  • 2021-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多