Python 代码读取文件 PermissionError: [Errno 13] Permission denied 解决方法
这个错误通常是因为代码没有权限读取指定的文件,可能是因为文件被占用或者是用户没有足够的权限访问该文件。为了解决这个问题,您可以尝试以下方法:
-
确保文件路径正确且文件存在 您需要确保输入的文件路径是正确的,并且文件确实存在于该路径下。您可以尝试在终端或文件浏览器中打开该文件,以确保该文件存在。
-
确保您有权限访问该文件 可能是您的用户没有足够的权限访问该文件。您可以尝试在管理员权限下运行代码,或者更改文件权限,以确保您有访问该文件的权限。
-
确保文件未被占用 如果该文件正在被其他进程占用,您的代码可能无法读取该文件。您可以尝试关闭其他进程或程序,然后再尝试运行代码。
-
尝试使用其他文件读取方式 如果您无法读取该文件,您可以尝试使用其他文件读取方式,例如使用二进制读取方式或使用os库来读取文件。
以下是示例代码:
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.9,ja-JP;q=0.8,ja;q=0.7',
'Cache-Control': 'no-cache',
'Connection': 'keep-alive',
'Pragma': 'no-cache',
'Upgrade-Insecure-Requests': '1'
}
path = input('请输入.m3u8文件路径:')
with open(path, 'r') as f:
lines = f.readlines()
if 'http' in lines[1]:
url = lines[1][lines[1].index('http'):lines[1].index('/-/')+3]
else:
url = lines[7][lines[7].index('http'):lines[7].index('/-/')+3]
response = requests.post(url + 'playlist.m3u8', headers=headers)
if response.status_code == 200:
print('成功:' + str(response.status_code))
url = response.url
url = url[:url.index('playlist.m3u8')]
print(url)
else:
print('失效:' + str(response.status_code))
如果您仍然无法解决问题,请提供更多信息,例如您的操作系统、Python 版本以及具体的代码片段,以便我更好地帮助您解决问题。
原文地址: https://www.cveoy.top/t/topic/nEmV 著作权归作者所有。请勿转载和采集!