使用Nokogiri Ruby分析Google搜索页面以获取结果统计信息和AdWords计数

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

首先让我说,不要将其用于任何现实生活中的项目。仅出于教育目的。

我正在尝试抓取如下所示的Google搜索页。

doc = Nokogiri::HTML(open("https://www.google.com/search?q=cardiovascular+diesese"))

我想获得我们在如下所示的每个搜索页面中看到的结果统计信息文本。

result-stat

但是我无法在解析的html中找到内容的位置,但是我可以在浏览器中进行检查,并看到它位于ID为result-stats的div中。我尝试了以下方法找到它-

doc.at_css('[id="result-stats"]').text

任何帮助将不胜感激。

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

需要使用selenium-webdriver来获取动态内容。仅Nokogiri无法对其进行解析。

require 'selenium-webdriver'

driver = Selenium::WebDriver.for :firefox
driver.get "https://www.google.com/search?q=cardiovascular+diesese"
doc = Nokogiri::HTML driver.page_source
doc.at_css('[id="result-stats"]').text
© www.soinside.com 2019 - 2024. All rights reserved.