Ruby Web Scraper与浏览器结果不同

时间:2020-10-20 19:54:37

标签: ruby web-scraping

我创建了一个简单的ruby Web抓取工具,以从网站获取价值,但是结果与浏览器中显示的结果不同。

网站:https://www.lme.com/Metals/Non-ferrous/Aluminium#tabIndex=0我正试图从第一个表中获得3个月(BID(美元/吨)的价格)。

lme_url = "https://www.lme.com/en-GB/Metals/Non-ferrous/Aluminium#tabIndex=0"
lme_unparsed = HTTParty.get(lme_url)
lme_parsed = Nokogiri::HTML(lme_unparsed)
@lme = Array.new
lme_table = lme_parsed.css('.tabContent').css('.table-wrapper')
lme_table = lme_table.css('tbody tr')
lme_table.each do |list|
  l = list.css('td').map(&:content)[1]
  @lme << l
end

1 个答案:

答案 0 :(得分:0)

我可以使用机械化使它工作:

# Scrapping LME Website
lme_agent = Mechanize.new
lme_page = lme_agent.get('https://www.lme.com')
aluminum = lme_agent.page.links_with(:text => 'LME Aluminium')[1].click
lme = aluminum.xpath('/html/body/div/div[2]/div[2]/div[2]/div[1]/div[2]/section[1]/div/div[2]/div/div[2]/table/tbody/tr[2]/td[2]')
@lme = lme.to_s.gsub(/<\/?[^>]*>/, "")