gpt4 book ai didi

javascript - 屏幕抓取建议 : Interactive graph

转载 作者:搜寻专家 更新时间:2023-10-31 23:28:11 25 4
gpt4 key购买 nike

我最近学习了一些关于如何将 BeautifulSoup 与 Python 结合使用的教程,并学习了如何简单地从网页中抓取文本和 url。我现在正尝试从以下链接中抓取数据,

http://www.study.cam.ac.uk/undergraduate/apply/statistics/

页面底部有一个交互式图形生成器,我想从中抓取所有数据,而不必花费大量时间繁琐地手写所有可能生成的图形的值。我曾尝试使用我的初学者技术,但我不清楚图形数据来自 HTML 中的何处 - 此外,HTML 似乎是动态的,具体取决于我的鼠标在屏幕上的位置。

问题:是否可以使用这些工具来抓取这些数据?如果可以,如何抓取?

最佳答案

使用浏览器开发人员工具,您可以看到当您单击Show Graph 按钮时,有一个POST 请求发送到http://www.study.cam.ac.uk/undergraduate/apply/statistics/data.php。 .结果是一个 JSON 对象,其中包含构建图形所需的所有数据。

在 Python 中模拟此请求,例如,使用 requests模块:

import requests

URL = "http://www.study.cam.ac.uk/undergraduate/apply/statistics/data.php"
HEADERS = {'X-Requested-With': 'XMLHttpRequest'}

data = {
'when': 'year',
'year': 2014,
'applications': 'on',
'offers': 'on',
'acceptances': 'on',
'groupby': 'college',
'for-5-years-what': 'university'
}

response = requests.post(URL, data=data, headers=HEADERS)
print response.json()

这里不需要BeautifulSoup。至少,根据我从您的问题中了解到的情况。

关于javascript - 屏幕抓取建议 : Interactive graph,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25194541/

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