РЕБЯТА я разместил вопрос ранее pypdf python tool .dont маркировать это как дубликат, как я получаю эту ошибку указанные нижеUnicodeEncodeError при чтении PDF с pyPdf
import sys
import pyPdf
def convertPdf2String(path):
content = ""
# load PDF file
pdf = pyPdf.PdfFileReader(file(path, "rb"))
# iterate pages
for i in range(0, pdf.getNumPages()):
# extract the text from each page
content += pdf.getPage(i).extractText() + " \n"
# collapse whitespaces
content = u" ".join(content.replace(u"\xa0", u" ").strip().split())
return content
# convert contents of a PDF file and store retult to TXT file
f = open('a.txt','w+')
f.write(convertPdf2String(sys.argv[1]))
f.close()
# or print contents to the standard out stream
print convertPdf2String("/home/tom/Desktop/Hindi_Book.pdf").encode("ascii", "xmlcharrefreplace")
Я получаю эту ошибку для 1-го PDF-файл UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)
и следующее сообщение об ошибке для этого PDF http://www.envis-icpe.com/pointcounterpointbook/Hindi_Book.pdf
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe7' in position 38: ordinal not in range(128)
Как решить эту
Вы точно выполнили код, указанный выше? 'u" \ xe7 ".encode (" ascii "," xmlcharrefreplace ")' правильно возвращает "ç". С «xmlcharrefreplace» он не должен терпеть неудачу для действительных символов Unicode. – AndiDog