Ich möchte urllib verwenden, um den XLS-Download-Link der Aktienliste der Shanghai Stock Exchange abzurufen, wie im kleinen roten Feld unten gezeigt:
Ich habe festgestellt, dass die erfassten XLS nur eine Fehlermeldung meldeten:
Wie kann ich die XLS mit Inhalten erfassen?
Der Code lautet wie folgt
from urllib import request
from datetime import datetime
# -*- coding:utf-8 -*-
url = 'http://query.sse.com.cn/security/stock/downloadStockListFile.do?' \
'csrcCode=&stockCode=&areaName=&stockType=1'
myheaders = [('User - Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13'
' (KHTML, like Gecko) Version/3.1 Safari/525.13'),]
opener = request.build_opener()
opener.addheaders = myheaders
request.install_opener(opener)
local = "/Users/Mty/Downloads/data/" + str(datetime.now().date()) + " .xls"
request.urlretrieve(url, local)
可以在标红线的url上看到返回的公司信息,剩下的就是模拟浏览器请求这个url了,request header中的refer一定不能省略,不然会报403
记住要模拟 refer 这一项的值。
http://blog.csdn.net/ssshen14...
这个是已有的解决方案
查看cookie,referer