jua*_*ith 5 python pdf parsing pdfminer
我正在使用模块pdfminerpython模块解析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)
...
Run Code Online (Sandbox Code Playgroud)
text_obj变量永远不会包含整个文本,即使pdf文件页面中的此文本始终格式相同也是如此.
我不认为问题出在代码中,因为我还使用pdf2txt.py脚本将pdf文件转换为txt,并且生成的txt文件的页面也被"剪切".
似乎问题可能是pdfminer配置或我的pdf文件格式......我完全迷失了.
有任何想法吗?
您可以使用 PyPDF2 代替吗?我为自己编写了一个小“界面”,以便将一个pdf文件一页一页地传输到另一个pdf文件(https://github.com/stianhotboi/pypdf2Interface/blob/master/pypdf2_interface.py)。在我的案例中,我没有看到任何像你这样的问题(一切似乎都转移得很好)。