假设我想在此处下载数据:http://www.dce.com.cn/publicweb/quotesdata/memberDealPosiQuotes.html
我想使用python自动执行此操作,我可以指定日期等。
我发现here可以使用pandas pd.read_csv
从网页中读取数据,但首先需要获取正确的网址。但在我的情况下,我不知道网址是什么。
此外,我还想自己指定日期和合同等。
在询问之前,我实际上尝试了开发工具,我仍然看不到网址,而且我不知道如何使其成为程序设计。
答案 0 :(得分:5)
javascript exportData('excel')
会生成提交的表单。通过使用Chrome devtools和 Network 面板,您可以找出标题和使用的帖子数据,然后编写一个python脚本来提交相同的http请求。
import requests
url = 'http://www.dce.com.cn/publicweb/quotesdata/exportMemberDealPosiQuotesData.html'
formdata = {
'memberDealPosiQuotes.variety':'a',
'memberDealPosiQuotes.trade_type':0,
'contract.contract_id':'all',
'contract.variety_id':'a',
'exportFlag':'excel',
}
response = requests.post(url, data=formdata)
filename = response.headers.get('Content-Disposition').split('=')[-1]
with open(filename, 'wb') as fp:
fp.write(response.content)
可能有可能找到修改帖子数据以获取不同数据的方法。通过逆向工程,通过反复试验或找到一些文档。
例如,您可以包含年份和日期的字段:
'year':2017,
'month':3,
'day':20