我正在使用模块pdfminer
python 模块解析 PDF 文档。我只想从此文档中提取文本。
这个过程很顺利,但是当我提取LTText*
对象时,我意识到我没有得到该LTText*
对象中的所有文本。它似乎有一个内部缓冲区或类似的东西,导致每页中的文本都被剪切。
我的代码:
...
for lt_text_obj in lt_objs:
if isinstance(lt_text_obj, LTTextBox) or isinstance(lt_text_obj, LTTextLine):
if lt_text_obj._objs:
for text_obj in lt_text_obj._objs:
if isinstance(text_obj, LTTextBox) or isinstance(text_obj,LTTextLine)]:
text_content.append(text_obj)
...
text_obj 变量从不包含整个文本,即使 pdf 文件页面中的文本始终采用相同的格式。
我不认为问题出在代码中,因为我还使用 pdf2txt.py 脚本将 pdf 文件转换为 txt,并且生成的 txt 文件的页面也是“剪切”的。
看来问题可能出在 pdfminer 配置或我的 pdf 文件格式中……我完全迷失了。
有任何想法吗?