首页 > 解决方案 > BeautifulSoup4 Python3 从引用的表中给出错误的值

问题描述

我正在尝试使用 bs4 + Python3使表格出现在https://covid19.isciii.es/中。

要提取的表

当我使用浏览器检查值时,网站显示相同的值

检查表

但是代码向我显示了不同的值[即,安达卢西亚的 (71,0,0) 而不是当前的 (4682,405,50.45) ]

url_base = 'https://covid19.isciii.es/'
response = get(url_base)
print(response)
if response.status_code == 200:
    html_soup = BeautifulSoup(get(url_base).text, 'html.parser').findAll("td")
    print(html_soup) 

执行结果

为什么会这样?如何用 bs4 解决这个问题?

提前致谢

标签: python-3.xweb-scrapingbeautifulsoup

解决方案


您实际上可以在 2 行中执行此操作:=

import pandas as pd

df = pd.read_html("https://covid19.isciii.es/")[0]

XHR 实际上给了我一个不同的 URL,它具有正确的值:-

import pandas as pd

df = pd.read_csv("https://covid19.isciii.es/resources/ccaa.csv")

推荐阅读