【问题标题】:Errno 13 Permission denied for downloading filesErrno 13 下载文件的权限被拒绝
【发布时间】:2021-07-06 05:54:29
【问题描述】:

我正在尝试从一个 url 下载 zip 文件,并将它们放在一个目录中

import requests 

def download_url(url, save_path, chunk_size=128):
    r = requests.get(url, stream=True)
    with open(save_path, 'wb') as fd:
        for chunk in r.iter_content(chunk_size=chunk_size):
            fd.write(chunk)

url = 'https://www1.nseindia.com/content/historical/EQUITIES/1994/NOV/cm23NOV1994bhav.csv.zip'
save_path = 'D:/folder/Programming/Python/trading/Bhavcopy/'

download_url(url,save_path)

我得到以下输出

Traceback(最近一次调用最后一次):文件 “d:\folder\Programming\Python\trading\bhavcopy.py”,第 12 行,在 模块 download_url(url,save_path) 文件“d:\folder\Programming\Python\trading\bhavcopy.py”,第 5 行,在 下载网址 使用 open(save_path, 'wb') as fd: PermissionError: [Errno 13] Permission denied: 'D:/folder/Programming/Python/trading/Bhavcopy/'

注意:我以管理员身份登录 Windows 并拥有完全权限。如何将权限传递给 python 文件写入将由 python 本身创建的目录

【问题讨论】:

  • 首先,正如主题所暗示的那样,这似乎与下载无关。这似乎是一个简单的权限问题。

标签: python


【解决方案1】:

trading/Bhavcopy. 是一个目录。您不能写入目录。您需要将文件名附加到save_path

【讨论】:

  • 这样做可以消除错误,但似乎 windows 现在只是创建一个 zip 文件,我的文件实际上是从网上下载的。你能帮我解决这个问题吗?
  • 似乎仍然是您上述问题的答案。也许不是你的下一个问题,但仍然如此。
  • 您的代码会下载一个 zip 文件。您是说您对收到一个 zip 文件感到惊讶吗?
猜你喜欢
  • 1970-01-01
  • 2017-04-20
  • 2011-06-11
  • 2014-07-15
  • 2015-07-17
  • 2016-07-25
  • 2013-06-12
  • 2016-05-07
  • 2013-05-02
相关资源
最近更新 更多