使用Beautiful Soup获取数据PID

时间:2018-08-14 14:06:46

标签: python-3.x web-scraping beautifulsoup

我正在尝试使用Python 3中的Beautiful Soup抓取以下网站。

https://www.pgatour.com/competition/2017/safeway-open/leaderboard.html

每个播放器都有一个关联的数据ID号,xpath如下所示:

Xpaths for the Players

由于类不是恒定的,并且随每个玩家而变化,因此提取div时遇到了麻烦。

我试图在解析html之后使用它,但是没有运气。

soup.find_all('div',{'class','leaderboard-item'})

从本质上讲,输出应该仅是data-pid中数字的列表。非常感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用请求库

import requests
json = requests.get('https://statdata.pgatour.com/r/464/2017/player_stats.json').json()
pids = [player['pid'] for player in json['tournament']['players']]

我找不到解决方案,该如何使用Beautiful汤解析它。在指向json的链接上方,我已经使用“网络”标签中的Chrome开发者工具找到了。