2013-05-22 3 views
4

Мне нужно прочитать pdf-книги, которые являются турецкими историями. Я нашел библиотеку, называемую pyPdf. Моя тестовая функция, которая приведена ниже, неправильно кодируется. Я думаю, мне нужно иметь турецкий пакет кодеков. Я ошибаюсь ? если я ошибаюсь, как я могу решить эту проблему, как я могу найти этот турецкий пакет кодеков?кодировка python для турецких символов

from StringIO import StringIO 
import pyPdf,os 

def getPDFContent(path): 
    content = "" 
    num_pages = 10 
    p = file(path, "rb") 
    pdf = pyPdf.PdfFileReader(p) 
    for i in range(0, num_pages): 
     content += pdf.getPage(i).extractText() + "\n" 
    content = " ".join(content.replace(u"\xa0", " ").strip().split()) 
    return content 

if __name__ == '__main__': 
    pdfContent = StringIO(getPDFContent(os.path.abspath("adiaylin-aysekulin.pdf")).encode("utf-8", "ignore")) 
    for line in pdfContent: 
     print line.strip() 
    input("Press Enter to continue...") 
+1

Что вы хотели сказать? Вы можете мне объяснить? – hinzir

ответ

1

Какую ошибку/неожиданный вывод вы получаете конкретно?

Согласно pyPdf homepage, pyPdf больше не поддерживается. Но есть вилка под названием PyPDF2 (GitHub), которая обещает «обрабатывать более широкий диапазон входных экземпляров PDF».

Возможно, обновление до PyPDF2 решает вашу проблему, я предлагаю вам попробовать это в первую очередь.

+0

Я решил проблему по-другому. Прежде чем я перекодировал pdf в текст, а затем прочитал текстовый файл. – hinzir

Смежные вопросы