Ошибка доступа при чтении файла: PermissionError: [Errno 13] Permission denied
Не могу понять в чем ошибка, хочу считывать содержимое файлов для индексации в Elasticsearch, но отказывает в доступе
import os
import chardet
from elasticsearch import Elasticsearch
es = Elasticsearch(['localhost'], port=9200)
def index_documents(directory):
files = os.listdir(directory)
for file_name in files:
file_path = os.path.join(directory, file_name)
with open(file_path, 'rb') as file:
raw_data = file.read()
result = chardet.detect(raw_data)
encoding = result['encoding']
try:
with open(file_path, 'r', encoding=encoding) as file:
content = file.read()
document = {
'content': content
}
es.index(index='my_index', body=document)
except UnicodeDecodeError:
print(f"Ошибка чтения файла {file_path}. Не удалось определить кодировку.")
directory_name = 'D:\\my_index_data'
index_documents(directory_name)
Ошибка:
Traceback (most recent call last):
File "C:\Users\Jonny\PycharmProjects\pythonProject1\main.py", line 38, in <module>
index_documents(directory_name)
File "C:\Users\Jonny\PycharmProjects\pythonProject1\main.py", line 16, in index_documents
raw_data = file.read()
^^^^^^^^^^^
PermissionError: [Errno 13] Permission denied
Источник: Stack Overflow на русском