如何使用 BeautifulSoup 抓取实时更新网站?

How do I scrape live updating website using BeautifulSoup?

我一直在尝试从 worldometer.com(https://www.worldometers.info/) 中提取实时数据,尤其是健康部分的数据。我能够提取标题(例如:'Communicable disease deaths today',但我无法提取实时数据(数字)。有人可以帮我解决这个问题吗?

实时数据(数字)由 JavaScript 填充,您可以使用诸如 selenium 之类的自动化工具轻松获取它。这是一个例子。请 运行 代码。

脚本:

import time
from bs4 import BeautifulSoup
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

url = "https://www.worldometers.info/"

driver = webdriver.Chrome(ChromeDriverManager().install())
driver.maximize_window()
time.sleep(5)
driver.get(url)
time.sleep(5)


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

num  = soup.select_one('div#c49 > div > span.counter-number')
print(num.text)

 

输出:

2,134,658