您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

从python调用url时获取“错误”页面源

从python调用url时获取“错误”页面源

这里有几个问题。根本原因是您要抓取的网站知道您不是真实的人,并且正在阻止您。许多网站只是通过检查标头以查看请求是否来自浏览器(机器人)来执行此操作。但是,此站点看起来像他们在使用Incapsula,旨在提供更复杂的保护。您可以尝试通过设置标头来不同地设置您的请求,以欺骗页面上的安全性- 但我怀疑这样做是否可行。

import requests

def get_page_source(n):
    url = 'https://www.whoscored.com/Matches/' + str(n) + '/live'
    headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
    response = requests.get(url, headers=headers)
    return response.text

n = 1006233
text = get_page_source(n)
print text

该网站似乎还使用了验证码-旨在防止网页抓取。如果网站正在努力防止刮擦-这很可能是因为它们提供的数据是专有数据。我建议您找到另一个提供此数据的站点- 或尝试使用官方API。

不久前即可查看此答案。好像whoscored.com使用OPTAAPI来提供信息。您也许可以跳过中间人,直接进入数据源。祝好运!

UEFA或FIFA似乎没有提供任何API来获取您想要的信息。但是,有一些第三方服务支持功能

OPTA-商业和免费。他们有关于比赛的不可思议的数据库。Whoscored.com当前正在使用它。

其他:排行榜,xmlsoccer,…

python 2022/1/1 18:42:38 有543人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶