Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug fix pdf parse index out of range #440

Merged

Conversation

Jiafan
Copy link
Contributor

@Jiafan Jiafan commented Apr 18, 2024

What problem does this PR solve?

fix a bug comes when parse some pdf file

Type of change

  • [☑️ ] Bug Fix (non-breaking change which fixes an issue)
  • fix issue : [436] [Bug]: PDF Parse Error: list index out of range

BUG 436

debug message

debug in docker code


def _line_tag(self, bx, ZM):
        pn = [bx["page_number"]]
        top = bx["top"] - self.page_cum_height[pn[0] - 1]
        bott = bx["bottom"] - self.page_cum_height[pn[0] - 1]
        if pn[-1] -1 >= len(self.page_images):
            return ""
        print("debug"*30)
        print(f"pn:{pn}")
        print(f"bx:{bx}")
        print(f"bott:{bott}")
        print(f"ZM:{ZM}")
        print(f"self.page_images[pn[-1] - 1] : {self.page_images[pn[-1] - 1]}")
        try:
            while bott * ZM > self.page_images[pn[-1] - 1].size[1]:
                bott -= self.page_images[pn[-1] - 1].size[1] / ZM
                pn.append(pn[-1] + 1)
                print(f"run bott:{bott}")
                print(f"run pn{pn}")
                print(f"run pn[-1]-1:{pn[-1]-1}")
        except Exception as e:
            print(e)
            return ""
        _line_str = "@@{}\t{:.1f}\t{:.1f}\t{:.1f}\t{:.1f}##" \
            .format("-".join([str(p) for p in pn]),
                    bx["x0"], bx["x1"], top, bott)
        print(_line_str)
        return _line_str

Log info

debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[10]
bx:{'x0': 77.0, 'x1': 514.3333333333334, 'top': 8139.333333333333, 'text': '第三十六条《办法》第三十二条所称灾难恢复处理能力,是指支付机构应当在支付业务中断后24小时之内恢复支付业务,并至少符合以下要求:(一)具有应急处理和灾难恢复的制度规定;(二)具有稳妥的应急处理预案及演练计划;(三)具有必要的灾难恢复处理人员和应急营业场所;(四)具有同机房数据备份设施和同城应用级备份设施。', 'bottom': 8311.333333333334, 'page_number': 10, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:733.3333333333339
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@10 77.0 514.3 561.3 733.3##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.66666666666667, 'x1': 517.0, 'top': 8532.333333333334, 'text': '第三十七条支付机构因突发事件导致支付业务中止超过2小时的,应当立即将有关情况报告所在地中国人民银行分支机构,并在3个工作日内以书面形式报告事故的原因、影响及补救措施。', 'bottom': 8599.0, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:179.0
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.7 517.0 112.3 179.0##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.66666666666667, 'x1': 513.6666666666666, 'top': 8613.0, 'text': '支付机构的分公司出现上述情形的,支付机构及其分公司应当比照前款分别报告所在地中国人民银行分支机构。', 'bottom': 8653.333333333334, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:233.33333333333394
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.7 513.7 193.0 233.3##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.66666666666667, 'x1': 515.3333333333334, 'top': 8664.666666666666, 'text': '第三十八条支付机构应当采取必要的管理措施和技术措施,防止客户身份信息和支付业务信息等资料火失、损毁、泄露。', 'bottom': 8705.0, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:285.0
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.7 515.3 244.7 285.0##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 77.0, 'x1': 513.6666666666666, 'top': 8719.0, 'text': '支付机构不得以任何形式对外提供客户身份信息和支付业务信息等资料。法律法规另有规定的除外。', 'bottom': 8757.666666666666, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:337.66666666666606
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 77.0 513.7 299.0 337.7##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.66666666666667, 'x1': 514.3333333333334, 'top': 8771.666666666666, 'text': '第三十九条支付机构对客户身份信息和支付业务信息的保管期限自业务关系结束当年起至少保存5年。', 'bottom': 8810.333333333334, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:390.33333333333394
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.7 514.3 351.7 390.3##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.0, 'x1': 513.6666666666666, 'top': 8824.333333333334, 'text': '司法部门正在调查的可疑交易或违法犯罪活动涉及客户身份信息和支付业务信息,且相关调查工作在前款规定的最低保存期届满时仍未结束的,支付机构应当将其保存至相关调查工作结束。', 'bottom': 8888.333333333334, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:468.33333333333394
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.0 513.7 404.3 468.3##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 78.0, 'x1': 513.6666666666666, 'top': 8903.333333333334, 'text': '第四十条支付机构对会计档案的保管期限适用《会计档案管理办法》(财会字【1998】32号文印发)相关规定。', 'bottom': 8943.666666666666, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:523.6666666666661
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 78.0 513.7 483.3 523.7##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 77.0, 'x1': 515.3333333333334, 'top': 8954.0, 'text': '第四十一条《办法》第三十八条所称重大违法违规行为,包括:(一)支付机构的高级管理人员明知他人实施违法犯罪活动仍为其办理支付业务的;(二)支付机构多次发生工作人员明知他人实施违法犯罪活动仍为其办理支付业务的。', 'bottom': 9102.333333333334, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:682.3333333333339
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 77.0 515.3 534.0 682.3##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 109.0, 'x1': 380.0, 'top': 9113.0, 'text': '第四十二条本细则自发布之日起实施。', 'bottom': 9127.666666666666, 'page_number': 11, 'layout_type': 'text', 'layoutno': 'text-0'}
bott:707.6666666666661
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
@@11 109.0 380.0 693.0 707.7##
debugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebugdebug
pn:[11]
bx:{'x0': 284.1568603515625, 'x1': 499.3333333333333, 'top': 9180.333333333334, 'text': '-11—', 'bottom': 9881.152628580729, 'page_number': 11, 'layout_type': ''}
bott:1461.1526285807286
ZM:3
self.page_images[pn[-1] - 1].size : (1785, 2526)
length page_images:11
run bott:619.1526285807286
run pn:[11, 12]
run pn[-1]-1:11
run bott*ZM:1857.4578857421857
list index out of range

@KevinHuSh KevinHuSh merged commit 39f1fea into infiniflow:main Apr 19, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants