gpt4 book ai didi

Python:如何抓取 ESPN 的比赛比赛信息

转载 作者:行者123 更新时间:2023-12-01 01:21:29 25 4
gpt4 key购买 nike

对编程相当陌生,抱歉,问题很广泛。

import requests
from bs4 import BeautifulSoup

def data():
League = ['nba', 'nfl', 'mlb']
url = f"http://www.espn.com/{League[0]}/schedule"
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")
date = soup.find('h2',{'class':'table-caption'})
return date.string

这是我到目前为止所拥有的,但我希望能够做的是抓取今天的比赛,所以结果是:

>>> 'Los Angeles Lakers at Charlotte Bobcats 7:00PM'
>>> 'Boston Celtics at Detroit Pistons 7:00PM'

我看到所有信息都在那里,但我不知道如何迭代行,以及如何在数据不是专门作为字符串时提取数据。我知道这很广泛,而且有很多要求。提前抱歉!

最佳答案

我认为 SO 社区有时对初学者来说太苛刻了。

以下是您查找表格结果并提取主客队名称的方法:

for row in soup.select("table.schedule tbody tr"):
home_team, away_team = row.select(".team-name")

print(home_team.get_text(), away_team.get_text())

这里的想法是使用 CSS selector要定位表行,请迭代每一行并获取带有 team-name 类的两个元素。

<小时/>

总的来说,提出这样的事情的过程相对简单:

  • 在浏览器开发者工具中检查所需的元素
  • 考虑一下可以用来查找该元素的东西 - 唯一标识该元素的东西(例如查看那个 super 显式的 team-name 类)
  • 编写(在本例中)Python/BeautifulSoup 代码来尝试定位此元素
  • 重复直到有效

这只是高水平,但希望有帮助。

关于Python:如何抓取 ESPN 的比赛比赛信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53798872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com