Python:-关于从 url 下载文件的问题

Python:-Issue regarding downloading the file from the url

提问人:Sanku 提问时间:6/14/2016 更新时间:6/14/2016 访问量:886

问:

我无法从网站下载文件 www.nse.com...当我尝试运行代码时,它向我显示以下消息

错误:-访问被拒绝

访问被拒绝

You don't have permission to access "http&#58;&#47;&#47;www&#46;nseindia&#46;com&#47;content&#47;historical&#47;EQUITIES&#47;2016&#47;JUN&#47;cm13JUN2016bhav&#46;csv&#46;zip" on this server.<P>
Reference&#32;&#35;18&#46;4ef0ef75&#46;1465880369&#46;ab8f79e
</BODY>
</HTML>

未下载

我的代码是这样的:

法典

import urllib2

urlOfFileName="http://www.nseindia.com/content/historical/EQUITIES/2016/JUN/cm13JUN2016bhav.csv.zip"

localZipFilePath="C:\Users\sai\Desktop\cm13JUN2016bhav.csv.zip"

hdr ={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.84 Safari/537.36'}

webRequest=urllib2.Request(urlOfFileName,headers=hdr)

try:
    page=urllib2.urlopen(webRequest)
    content=page.read()
    output=open(localZipFilePath,"wb")
    output.write(bytearray(content))
    output.close()

except urllib2.HTTPError,e:
    print e.fp.read()
    print "Not Downloaded"

我也使用过User_Agent标头。我无法理解这个问题。请帮帮我解决这个问题。

评论

0赞 SvbZ3r0 6/14/2016
那是因为您根本无法访问该站点。也许它需要某种授权。我什至无法从 Chrome 访问该网站。
1赞 user94559 6/14/2016
我设法解决了这个问题,但在这个过程中,很明显网站的所有者专门试图阻止对文件的编程访问。我决定不分享我的解决方案。
0赞 SvbZ3r0 6/14/2016
是的。我很确定有办法合法地获取历史证券交易所数据
0赞 Sanku 6/14/2016
但是我可以直接从网站下载文件。这是网站的 URL。nseindia.com..实际上我正在上一门关于python编程的课程。所以老师教了我这个代码。代码对她来说很好用。她能够下载文件。
1赞 SvbZ3r0 6/14/2016
@smarx 我敢肯定这是一个需要很长答案的问题,但对于普通用户来说,您怎么知道文件在下载时受到限制?如果我是尝试下载此文件的人,这个问题就不会出现在 SO 中,我也不会知道我不应该下载它。有没有办法在下载前检查?或者我应该在 SO 中将其作为一个单独的问题提出来?

答: 暂无答案