Я пытаюсь преобразовать все читаемые в PDF-файл в строку, используя textract. Он работает для большинства файлов, но в некоторых он дает UnicodeDecodeError:
Я хочу пропустить проблемные символы.
Я пытался найти способ решить его с помощью errors="ignore"
или errors="replace"
, но я не смогне найти способ сделать это.
Это фактическая часть, которая вызывает ошибку (она находится в цикле for для обработки each
PDF-файлов в folder_name
):
text_of_the_pdf = textract.process(os.path.join(self.folder_name, each))
text_of_the_pdf = textract.process(os.path.join(self.folder_name, each))
File "/Users/aaron/PycharmProjects/PDFParser/venv/lib/python3.6/site-packages/textract/parsers/__init__.py", line 77, in process
return parser.process(filename, encoding, **kwargs)
File "/Users/aaron/PycharmProjects/PDFParser/venv/lib/python3.6/site-packages/textract/parsers/utils.py", line 47, in process
unicode_string = self.decode(byte_string)
File "/Users/aaron/PycharmProjects/PDFParser/venv/lib/python3.6/site-packages/textract/parsers/utils.py", line 65, in decode
return text.decode(result['encoding'])
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/encodings/cp1254.py", line 15, in decode
return codecs.charmap_decode(input,errors,decoding_table)
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 3227: character maps to <undefined>