python网页抓取高尔夫障碍

2024-06-01 01:39:29 发布

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

我是一个初学者,所以我认为这应该是一个简单的问题,然而,翻阅了bs4文档后,我正在努力寻找解决方案

如果你对高尔夫有任何了解,这可能有助于回答这个问题

我正试图提取这一页http://www.golf.org.au/Handicap/3012801370上橙色大框中的障碍号码。目前的数字是14.3,尽管这有所改变

我的节目

import requests, bs4
res = requests.get('http://www.golf.org.au/Handicap/3012801370')
res.raise_for_status()
gethcp = bs4.BeautifulSoup(res.text, "lxml")
hcp = gethcp.select('#ctl11_lblExactHandicap')
type(hcp)
hcp[0].getText()

我猜我在这一部分做错了什么。。(决议案文,…)

非常感谢您的指导


Tags: 文档orghttpwwwres解决方案requestsau
1条回答
网友
1楼 · 发布于 2024-06-01 01:39:29

你的代码很好。问题是你被重定向到此页面

http://www.golf.org.au/handicap-interstitial/3012801370

您需要选择“跳过以查看残障历史记录”的位置>>;'。您可以使用Selenium来实现这一点,或者添加会话cookie,但是在这种情况下,可以通过使用skip选项的href来实现。所以这看起来像:

import requests, bs4

# Changed URL
res = requests.get('http://www.golf.org.au/handicap-interstitial/3012801370/Skip')

res.raise_for_status()
gethcp = bs4.BeautifulSoup(res.text, "lxml")
hcp = gethcp.select('#ctl11_lblExactHandicap')
type(hcp)
hcp[0].getText()

这将为您提供“14.3”的预期输出

相关问题 更多 >