Pdfminer,pyinstaller 后无法读取 LTText
Pdfminer, can not read LTText after pyinstaller
我制作了一个可以使用 pdfminer 读取 PDF 的应用程序。
开发时应用OK
之后,我使用 pyinstaller 打包到 .exe 文件。但是读取结果和开发中的不一样。
详细来说,它无法读取 **LTText LTTextBoxHorizontal 所以我无法提取文本。
哪位知道这个问题的,请帮帮我。
登录开发
执行 pyinstaller 后的日志
Python 3.9.1
Pyinstaller 4.2
pdfminer.six==20201018
six==1.15.0
Command: pyinstaller --onefile file.py
相关来源:
for index, page in pdf_object:
# TODO: Only read last page - maybe change if PDF file change
if index == number_of_page - 1:
# read the page into a layout object
self.interpreter.process_page(page)
layout = self.device.get_result()
print("Size of this page (%d, %d)" % (layout.x1, layout.y1))
print("len = %d" % len(layout._objs))
self.parse_obj(layout._objs)
def parse_obj(self, lt_objs):
# loop over the object list
print("Go loop")
print(lt_objs)
i = 0
for obj in lt_objs:
i += 1
print("In loop %d" % i)
Pyinstaller 库所有者刚刚回答了我。它通过添加 --additional-hooks-dir 修复。
详情请见here。
也许他们会在下一个版本中修复 pyinstaller 以支持 pdfminer。
我制作了一个可以使用 pdfminer 读取 PDF 的应用程序。
开发时应用OK
之后,我使用 pyinstaller 打包到 .exe 文件。但是读取结果和开发中的不一样。
详细来说,它无法读取 **LTText LTTextBoxHorizontal 所以我无法提取文本。
哪位知道这个问题的,请帮帮我。
登录开发
执行 pyinstaller 后的日志
Python 3.9.1 Pyinstaller 4.2 pdfminer.six==20201018 six==1.15.0 Command: pyinstaller --onefile file.py
相关来源:
for index, page in pdf_object:
# TODO: Only read last page - maybe change if PDF file change
if index == number_of_page - 1:
# read the page into a layout object
self.interpreter.process_page(page)
layout = self.device.get_result()
print("Size of this page (%d, %d)" % (layout.x1, layout.y1))
print("len = %d" % len(layout._objs))
self.parse_obj(layout._objs)
def parse_obj(self, lt_objs):
# loop over the object list
print("Go loop")
print(lt_objs)
i = 0
for obj in lt_objs:
i += 1
print("In loop %d" % i)
Pyinstaller 库所有者刚刚回答了我。它通过添加 --additional-hooks-dir 修复。
详情请见here。
也许他们会在下一个版本中修复 pyinstaller 以支持 pdfminer。