我试图从一个网站上收集一些数据,但在将数据过滤到一组结果中时遇到了问题
我想要一个包含2018-19赛季所有先进数据的DF
import requests
from bs4 import BeautifulSoup
import pandas as pd
headers = {'User-Agent':
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36'}
page = "https://www.basketball-reference.com/players/c/curryst01.html"
pageTree = requests.get(page, headers=headers)
pageSoup = BeautifulSoup(pageTree.content, 'html.parser')
dados_agrupados = pageSoup.find_all("div", {"id": "all_advanced"}, recursive=True)
print(dados_agrupados)
如您所见,dados_agrupados对象包含完整的历史数据和一些其他信息
我如何进一步过滤这些数据以获得2018-19赛季的统计数据
要获取advanced stats表,需要将其从html注释(它所在的位置)中提取出来。我不知道你想要所有
"all advanced stats from the 2018-19 season."
是什么意思这里只有一个表包含
id="all_advanced"
和该季节的一行。如果你的意思是你想去那个链接,拉那个表,那是另一回事。但你不是很清楚因此,这里要拉取该表,然后过滤该季节/行:
输出:
和过滤器:
相关问题 更多 >
编程相关推荐