【问题标题】:Permission to save a file in Python在 Python 中保存文件的权限
【发布时间】:2018-02-24 13:37:48
【问题描述】:

这段代码

from PIL import ImageGrab, Image
im = ImageGrab.grab()
im.save(r'D:/MyFilesForProject/Network/screen.jpg')

导致这个错误

Traceback (most recent call last):
  File "G:/PycharmProjects/2.7NetworkExersice/Screenshot.py", line 4, in 
<module>
im.save(r'D:\MyFilesForProject\Network\screen.jpg')
File "C:\Python27\lib\site-packages\PIL\Image.py", line 1676, in save
fp = builtins.open(fp, "wb")
IOError: [Errno 13] Permission denied: 
'D:\\MyFilesForProject\\Network\\screen.jpg'

我试图在整个互联网上找到解决方案,但没有发现任何可行的方法。为了避免重复的建议:是的,我允许在属性中读取和写入文件夹并尝试将其保存在另一个地方。我真的希望得到你的帮助。提前谢谢你。

【问题讨论】:

  • .save() 方法中的 r 是什么?
  • 这段代码对我来说很好。问题似乎是 Python 没有将文件写入 D:\.. 检查 python 是否有权写入该位置..
  • @HarshPatel r 指定这是一个 raw 字符串,因此不必转义反斜杠。
  • 我对内置函数的用法并不完全熟悉,但 fp= ... (fp..) 对我来说似乎有点尴尬...
  • @A.Joly 该代码是 PIL 库的一部分,与 OP 的代码无关。

标签: python image file permissions


【解决方案1】:

Python 有写入该驱动器的权限存在问题。

尝试以管理员身份运行 Python:

从命令行:

runas.exe /user:administrator "C:\Python27\python.exe Screenshot.py"

我通过尝试保存到没有写入权限的文件夹来复制您的错误。

这就是我修复错误的方法:

  1. 右键单击要保存到的文件夹。

  2. 点击列表底部的properties

  3. 转到security 标签

  4. 点击To change permissions, click Edit旁边的Edit按钮

  5. 确保write 部分在您登录的用户的Allow 列中有一个勾号。如果这不是私人文件夹或安全风险,您可以允许everyone

我注意到的另一件事是我在更新的修复程序中遇到了错误

 File "C:\Anaconda3\lib\site-packages\PIL\Image.py", line 1725, in save
fp = builtins.open(filename, "w+b")

注意w+b 而在你的回溯中你有wb

这可能是由于使用了过时版本的 PIL..

尝试通过 PIP 卸载 PIL,然后重新安装最新版本

pip install pil

另一个不同之处是我在 Python 3.6 上运行它,而不是像你自己那样在 2.7 上运行。

【讨论】:

  • 好的,我在 cmd 中输入了这个代码,控制台要求我输入管理员密码,但不要让我输入。好的,我为我的 Windows 帐户写了一个密码并在命令行中复制它 - 错误。与电脑的密码相同。试图以管理员身份运行 cmd - 即使他要求输入密码。但我不打算每次都用 cmd 来运行这个脚本。这只是代码的一部分,最后一部分不起作用。也许你有什么解决办法?
  • 如果您可以以管理员身份正常运行该文件,那么您就知道权限存在问题。很奇怪,它不适合你,但代码很好,错误是说明权限错误。
  • 是的,我也这么认为,但我无法解决。我必须做什么来解决这个问题? Rtinstall PyCharm?重新安装 Python?重新安装Windows?购买一台新计算机或只是开始编写 Java 代码?
猜你喜欢
  • 1970-01-01
  • 2017-03-15
  • 2013-03-03
  • 1970-01-01
  • 1970-01-01
  • 2012-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多