Извлечение абзаца под ключевым словом

#python #pdf #text-extraction #pymupdf

#python #pdf #text-extraction #pymupdf

Вопрос:

Я пытаюсь извлечь абзацы под ключевым словом в pdf-файле.

Пример:-

(d) Уходящий Агент по обслуживанию за свой счет предоставляет Агенту-преемнику по Обслуживанию такие документы и записи и предоставляет такую помощь, которую Агент-преемник по Обслуживанию может обоснованно запросить для целей выполнения своих функций в качестве Агента по обслуживанию в соответствии с Финансовыми документами.

(e) Уведомление Агента по обслуживанию об отставке вступает в силу только после назначения преемника.

(f) После назначения преемника уходящий Агент по обслуживанию освобождается от любых дальнейших обязательств в отношении Финансовых документов, но сохраняет право на получение выгоды в соответствии с настоящим пунктом 25. Его правопреемник и каждая из других Сторон имеют те же права и обязанности между собой, которые они имели бы, если бы такой правопреемник был первоначальной Стороной.

(g) После консультаций с Заемщиком Большинство Кредиторов могут, уведомив Агента по обслуживанию, потребовать от него уйти в отставку в соответствии с пунктом (b) выше. В этом случае Агент по обслуживанию должен подать в отставку в соответствии с пунктом (b) выше.

25.14 Конфиденциальность

(a) Действуя в качестве агента для Финансовых Сторон, Агент по обслуживанию считается действующим через свое подразделение агентства, которое рассматривается как отдельное подразделение от любого другого из его подразделений или департаментов.

(b) Если информация получена другим отделом или отделом Агента по обслуживанию, она может рассматриваться как конфиденциальная для этого отдела или департамента, и считается, что Агент по обслуживанию не уведомлен об этом.

(c) Несмотря на любое другое положение любого Финансового документа об обратном, ни Агент по обслуживанию, ни Уполномоченный Ведущий Организатор не обязаны раскрывать любому другому лицу (i) любую конфиденциальную информацию или (ii) любую другую информацию, если раскрытие будет или может, по его разумному мнению, представлять собой нарушение любого закона или нарушение фидуциарной обязанности.

25.15 Взаимоотношения с кредиторами

(a) Агент по Обслуживанию может обращаться с каждым Кредитором как с Кредитором, имеющим право на платежи в соответствии с настоящим Соглашением и действующим через свой Офис по Обслуживанию, если он не получил не менее чем за пять рабочих дней предварительное уведомление от этого Кредитора об обратном в соответствии с условиями настоящего Соглашения.

Здесь я хочу извлечь все подробности ниже «Конфиденциальность» до тех пор, пока не начнутся «Отношения с кредиторами». То, что я ищу, — это универсальный код, который будет извлекать все детали ниже ключевого слова до следующего блока.

Ответ будет выглядеть так.

Конфиденциальность

(a) Действуя в качестве агента для Финансовых Сторон, Агент по обслуживанию считается действующим через свое подразделение агентства, которое рассматривается как отдельное подразделение от любого другого из его подразделений или департаментов.

(b) Если информация получена другим отделом или отделом Агента по обслуживанию, она может рассматриваться как конфиденциальная для этого отдела или департамента, и считается, что Агент по обслуживанию не уведомлен об этом.

(c) Несмотря на любое другое положение любого Финансового документа об обратном, ни Агент по обслуживанию, ни Уполномоченный Ведущий Организатор не обязаны раскрывать любому другому лицу (i) любую конфиденциальную информацию или (ii) любую другую информацию, если раскрытие будет или может, по его разумному мнению, представлять собой нарушение любого закона или нарушение фидуциарной обязанности.

I have tried the following code using pymupdf.

 import fitz doc = fitz.open("example.pdf") blocks = [x[4] for x in doc[0].getText("Confidentiality")] print(blocks)