R 刮取网页的全部内容

R 刮取网页的全部内容,r,web-scraping,rvest,R,Web Scraping,Rvest,我正在尝试构建一个闪亮的应用程序来跟踪疫苗的进展,因为它不保留历史信息。通过Chrome DevTools查看页面代码,我可以看到我想从每个带有class“card content”的标签中提取信息,我尝试使用rvest包使用以下代码: data <- read_html('https://covid.cdc.gov/covid-data-tracker/#vaccinations') current_numbers <- data %>% html_nodes('div.ca

我正在尝试构建一个闪亮的应用程序来跟踪疫苗的进展,因为它不保留历史信息。通过Chrome DevTools查看页面代码,我可以看到我想从每个带有class
“card content”
标签中提取信息,我尝试使用
rvest
包使用以下代码:

data <- read_html('https://covid.cdc.gov/covid-data-tracker/#vaccinations')
current_numbers <- data %>% html_nodes('div.card-content')
没有中间的内容,尽管页眉和页脚代码似乎都在那里


是否有更好的方法从页面上的
内容中提取数据?
rvest
是适合此应用的软件包吗?我也可以试试Python中的bs4,但我不知道如何用它来制作一个闪亮的应用程序。

网站正在处理动态内容,所以你无法通过这种方式获得任何信息

我对
r
不太了解,但正如您提到的
python
bs4
一样,我可以给您一个小的工作示例

示例

from selenium import webdriver
from bs4 import BeautifulSoup
from time import sleep

driver = webdriver.Chrome(executable_path='C:\Program Files\ChromeDriver\chromedriver.exe')
url = "https://covid.cdc.gov/covid-data-tracker/#vaccinations"

driver.get(url)
sleep(2)

soup = BeautifulSoup(driver.page_source, "lxml")

driver.close()
[{'title': item.find('h4').get_text(), 'value': item.find('div').get_text()}  for item in soup.select('div.card-content')]
输出

[{'title': 'Total Doses Distributed', 'value': '37.960.000'},
 {'title': 'Total Doses Administered', 'value': '17.546.374'},
 {'title': 'Number of People Receiving 1 or More Doses',
  'value': '15.053.257'},
 {'title': 'Number of People Receiving 2 Doses', 'value': '2.394.961'},
 {'title': 'Doses Administered in Long-Term Care Facilities ',
  'value': '2.089.181'}]
[{'title': 'Total Doses Distributed', 'value': '37.960.000'},
 {'title': 'Total Doses Administered', 'value': '17.546.374'},
 {'title': 'Number of People Receiving 1 or More Doses',
  'value': '15.053.257'},
 {'title': 'Number of People Receiving 2 Doses', 'value': '2.394.961'},
 {'title': 'Doses Administered in Long-Term Care Facilities ',
  'value': '2.089.181'}]