python - 用urllib抓取網頁上的下載鏈接,目標文件是xls形式,但發現抓下來的xls是空表,裡面只有一句報錯信息,求幫助。
阿神
阿神 2017-05-18 10:46:56
0
2
726

想用urllib抓取上交所股票列表的xls下載鏈接,如下圖紅色小框:

#發現抓下來的xls只有報錯訊息:

#請問要怎樣才能把有內容的xls抓下來?

程式碼如下

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)
阿神
阿神

闭关修行中......

全部回覆(2)
黄舟

可以在標紅線的url上看到返回的公司信息,剩下的就是模擬瀏覽器請求這個url了,request header中的refer一定不能省略,不然會報403

記得要模擬 refer 這項的數值。

http://blog.csdn.net/ssshen14...
這個是已有的解決方案

曾经蜡笔没有小新

查看cookie,referer

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板