解压缩受密码保护的文件时出现权限错误
Permission error when unzipping files that are password protected
我正在尝试解压缩一些受密码保护的文件,但我总是收到一些权限错误。我已尝试以管理员身份执行此操作 运行 vscode,但我仍然遇到相同的错误。
代码如下:
input_file = ".\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(input_file, pwd=b'qpsqpwsr')
这里是错误:
Traceback (most recent call last):
File "c:/Users/usr/workspace/pa-dirty-price-crawler/src/outlook.py", line 23, in <module>
with zipfile.ZipFile(input_file, 'r') as zip_ref:
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1240, in __init__
self.fp = io.open(file, filemode)
PermissionError: [Errno 13] Permission denied: '.\pa-dirty-price-crawler\folders'
我不知道还有哪个库可以执行相同的操作,但如果有人对修复此问题有任何建议,我将不胜感激。
编辑:
当我尝试指定整个文件路径名时:
input_file = "C:\Users\usr\workspace\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(pwd=b'qpsqpwsr')
我仍然收到此错误:
Traceback (most recent call last):
File "c:/Users/usr/workspace/pa-dirty-price-crawler/src/outlook.py", line 23, in <module>
with zipfile.ZipFile(input_file, 'r') as zip_ref:
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1240, in __init__
self.fp = io.open(file, filemode)
PermissionError: [Errno 13] Permission denied: 'C:\Users\usr\workspace\pa-dirty-price-crawler\folders'
您似乎正在传递一个目录作为输入。这是可能的问题,而不是 zip 受密码保护。
要提取 zip 文件,zipfile.ZipFile
将 zip 文件作为输入而不是目录。
因此,您的代码需要两个变量:一个输入 zip file 和一个 output 目录:
input_file = r".\pa-dirty-price-crawler\folders\myzipfile.zip"
output_directory = r".\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(output_directory, pwd=b'qpsqpwsr')
* 注意 r"string"
的使用,这有助于避免所有反斜杠
我正在尝试解压缩一些受密码保护的文件,但我总是收到一些权限错误。我已尝试以管理员身份执行此操作 运行 vscode,但我仍然遇到相同的错误。
代码如下:
input_file = ".\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(input_file, pwd=b'qpsqpwsr')
这里是错误:
Traceback (most recent call last):
File "c:/Users/usr/workspace/pa-dirty-price-crawler/src/outlook.py", line 23, in <module>
with zipfile.ZipFile(input_file, 'r') as zip_ref:
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1240, in __init__
self.fp = io.open(file, filemode)
PermissionError: [Errno 13] Permission denied: '.\pa-dirty-price-crawler\folders'
我不知道还有哪个库可以执行相同的操作,但如果有人对修复此问题有任何建议,我将不胜感激。
编辑:
当我尝试指定整个文件路径名时:
input_file = "C:\Users\usr\workspace\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(pwd=b'qpsqpwsr')
我仍然收到此错误:
Traceback (most recent call last):
File "c:/Users/usr/workspace/pa-dirty-price-crawler/src/outlook.py", line 23, in <module>
with zipfile.ZipFile(input_file, 'r') as zip_ref:
File "C:\ProgramData\Anaconda3\lib\zipfile.py", line 1240, in __init__
self.fp = io.open(file, filemode)
PermissionError: [Errno 13] Permission denied: 'C:\Users\usr\workspace\pa-dirty-price-crawler\folders'
您似乎正在传递一个目录作为输入。这是可能的问题,而不是 zip 受密码保护。
要提取 zip 文件,zipfile.ZipFile
将 zip 文件作为输入而不是目录。
因此,您的代码需要两个变量:一个输入 zip file 和一个 output 目录:
input_file = r".\pa-dirty-price-crawler\folders\myzipfile.zip"
output_directory = r".\pa-dirty-price-crawler\folders"
import zipfile
with zipfile.ZipFile(input_file, 'r') as zip_ref:
zip_ref.extractall(output_directory, pwd=b'qpsqpwsr')
* 注意 r"string"
的使用,这有助于避免所有反斜杠