读取HTML函数无法抓取Pokemono数据表

2024-09-28 14:16:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过爬行表格来练习使用pandas的read_html函数,但我遇到了一个错误。我的代码如下:

import pandas as pd
url = "https://www.pokemondb.net/pokedex/all"
dfs = pd.read_html(url)

上面的代码返回了错误,无法运行,因此我尝试了下面的代码,但仍然无法运行

from bs4 import BeautifulSoup
import pandas as pd
import requests
url = "https://www.pokemondb.net/pokedex/all"
html = requests.get(url)
soup = BeautifulSoup(html.text, "html.parser")
dfs = pd.read_html(soup.table)

我不知道到底是怎么回事。有人能给我一些启发吗

谢谢


Tags: 代码httpsimporturlpandasreadnethtml
2条回答

read_html的文档中,您可以看到它不适用于https

你的第一个版本证实了这一点


在第二个版本中,您不需要BeautifulSoup

read_html()使用自己的bs4lxmlhtml5-请参见文档中的选项flavor来选择它

import requests
import pandas as pd

url = "https://www.pokemondb.net/pokedex/all"
html = requests.get(url)

dfs = pd.read_html(html.text)

print(dfs)

我希望它能帮助你

table = soup.findAll('table', attrs={'id':'pokedex'}) 

然后将表转换为字符串

 dfs = pd.read_table(str(table)) 

它会给你一个输出

相关问题 更多 >

    热门问题