【发布时间】:2020-09-08 03:02:42
【问题描述】:
我正在使用请求抓取以下网站Scorebing。 为此,我正在探索该网站以定位 XHR 调用并获取这样的 url
import requests,json
header={some data from the XHR I got using Postman}
url='https://lv.scorebing.com/ajax/score/data?mt=0&nr=1&corner=1'
response=requests.get(url=url,headers=header,data=json.dumps({}))
response.json()
那里没有问题。我的问题是,如果我切换选项卡,例如从 Corner 切换到 Fixture,则不会调用新的 XHR。事实上,只有“Live Matches”和“Corners”允许这种直接的 XHR 连接。我看到一些 js 脚本已加载,但我无法从那里复制我的上一步。
我知道我可以使用 selenium 来抓取它,并且可能使用对页面 url 的常规请求并使用 BSoup,但我不明白为什么有些选项卡会调用 XHR 来加载其他类似选项卡使用的数据js。 我想知道如何对这些 js 调用进行逆向工程,以获得类似于第一部分的 API。
【问题讨论】:
标签: javascript python python-3.x python-requests jqxhr