微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python:Tika:parser.open_filefilepath无法正确打开文件” PermissionError:[Errno 13]权限被拒绝:”

如何解决Python:Tika:parser.open_filefilepath无法正确打开文件” PermissionError:[Errno 13]权限被拒绝:”

此刻我正在使用Tika,我努力使它工作。我有以下代码

import tika
import logging
from tika import parser
tika.initVM()
import os
from Tool.settings import Settings

settings = Settings() # setting.UPLOAD_DIRECTORY = 'C:\\Users\\username\\Projects\\Tool/uploaded_files'

The settings looks something like this:
# class Settings:
#     def __init__(self):
#         self.ROOTDIR = "{}".format(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
#         self.UPLOAD_DIRECTORY = r"{}/uploaded_files".format(self.Tool_DIR)


def convert_pdf_to_text(filepath):
    tika.initVM()
    logging.info('Started Tika server')
    raw_data = parser.from_file(filepath)
    return raw_data['content'],raw_data['Metadata']

def get_text(path):
    text,Metadata = convert_pdf_to_text(path)
    return text,Metadata

class document_split():
    def __init__(self,path):
        self.path = settings.UPLOAD_DIRECTORY
        self.file = os.path.basename(path)
        self.settings = Settings()
        self.raw_data,self.Metadata = get_text(self.path)


class converted_files():
    def __init__(self,type):
        self.company = type
        self.settings = Settings()
        self.UPLOAD_DIRECTORY = settings.UPLOAD_DIRECTORY
        self.dictionary = self.create_dictionary

    @property
    def create_dictionary(self):
        loaded_files = {}

        for file in os.listdir(self.UPLOAD_DIRECTORY):
            fp = os.path.join(settings.UPLOAD_DIRECTORY,file)
            loaded_file = Document(fp)
            print(loaded_file)
            value = loaded_file
            key = loaded_file.date
            loaded_files[key] = value
            print(value)

        print('Loaded {} files'.format(len(loaded_files)))
        return loaded_files

我的问题在于这部分:

for file in os.listdir(self.UPLOAD_DIRECTORY):
                fp = os.path.join(settings.UPLOAD_DIRECTORY,file)
                loaded_file = Document(fp)
                print(loaded_file)
                value = loaded_file
                key = loaded_file.date
                loaded_files[key] = value
                print(value)

它给我以下错误

如果_is_file_object(urlOrPath)否则以urlOrPath打开(path,'rb')as f: PermissionError:[Errno 13]权限被拒绝:'C:\ Users \ user \ Projects \ Tool / uploaded_files'

当我对如下路径进行硬编码时,它不会给出此错误消息:

r'C:\\Users\\user\\Projects\\Tool/uploaded_files'

所以现在我正在努力寻找一种方法r'进入打开文件的路径...有人可以帮助我吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。