【问题标题】:Parsing cp1251 pdf to text in python将cp1251 pdf解析为python中的文本
【发布时间】:2015-11-20 13:46:48
【问题描述】:

有没有办法从带有俄语文本(cp1251)的pdf文件中提取文本?

为了解析 pdf 文件,我使用的是 pdfminer 包。 我试图在 pdfminer.converter.TextConverter 类的参数中指定编码,但没有帮助。

【问题讨论】:

  • 不清楚你有文本后要做什么,你想用python解析它吗?
  • 我想从pdf中提取所有文本(可以提取的),然后使用nltk包进行分析。

标签: python parsing pdf cp1251


【解决方案1】:

如果您想在从 PDF 文件中提取文本后进一步解析文本,则需要 python...所以只需先提取文本而不转换文本并将其保存在 txt 文件中。

您可以为此目的使用 pdf2txt(使用 unbuntu:http://manpages.ubuntu.com/manpages/precise/man1/pdf2txt.1.html

然后你用python打开文件并将文本形式cp1251转换为utf-8,这里接受的答案将告诉你如何做:

How to convert a string from CP-1251 to UTF-8?

然后解析...

【讨论】:

  • 感谢您的回答,但是有什么方法可以在不使用外部可执行文件(如 pdf2txt)的情况下提取文本,而只需使用一些 python 包?
  • 我尝试从命令行使用 pdftotext,但是对于带有俄语文本的 pdf,它不想正常工作(它只提取带有特殊符号的英文单词 - 都是 ascii)。
  • 有没有办法可以附加 PDF 文件以便我们玩?或指向它的链接...
  • 我 pdf2txt 与俄罗斯 PDF 并得到一堆错误,我会看看它是 pdfminer 失败还是 pdf2txt 可能不支持 unicode...如果这种情况我会修复它。
  • 我发现使用 subprocess.call 函数从 python 启动的 pdf2txt.exe(Windows 的 GUI 程序,Ver1.3,主页:pdf2txt.com)正确转换了测试俄语 pdf(并且还测试了英语 pdf )。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-08
  • 2023-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-30
  • 2017-07-15
相关资源
最近更新 更多