我正在使用Python中的请求模块从internet下载一个zip文件。 我在尝试时遇到403错误
该文件在服务器中遵循一种模式,因此我能够动态生成url。其有效期至2020年12月31日。但这之后就不行了
可用URL:https://www1.nseindia.com/content/historical/EQUITIES/2020/DEC/cm31DEC2020bhav.csv.zip 不可用的URL:https://www1.nseindia.com/content/historical/EQUITIES/2021/JAN/cm01JAN2021bhav.csv.zip
Python代码:
formattedUrl='https://www1.nseindia.com/content/historical/EQUITIES/2021/JAN/cm01JAN2021bhav.csv.zip'
requestedFile = requests.get(formattedUrl)
requestedFile.status_code
我也试过:
from fake_useragent import UserAgent
import requests
ua_str = UserAgent().chrome
formattedUrl='https://www1.nseindia.com/content/historical/EQUITIES/2021/JAN/cm01JAN2021bhav.csv.zip'
requestedFile = requests.get(formattedUrl,headers={"User-Agent": ua_str})
requestedFile.status_code
我也试过:
import zipfile, urllib.request, shutil
url = formattedUrl
file_name = 'cm01JAN2021bhav.csv.zip'
with urllib.request.urlopen(url) as response, open(file_name, 'wb') as out_file:
shutil.copyfileobj(response, out_file)
with zipfile.ZipFile(file_name) as zf:
zf.extractall()
他们都没有工作。 任何建议
问候
编辑:添加更多细节,因为一些评论说不允许下载文件或需要某种身份验证。
我可以通过那里的网页下载。不需要身份验证。
访问:https://www1.nseindia.com/products/content/equities/equities/archieve_eq.htm
选择报告:Bhavcopy
日期:2021年1月1日
点击获取数据
您将获得文件链接,单击该链接将下载文件。
截图:
如果下面的代码解决了类似的问题,我想你需要点击2个额外的URL并使用它返回的cookies
相关问题 更多 >
编程相关推荐