Разделение PDF на две части каждый раз, когда ключевое слово появляется с python - PullRequest
0 голосов
/ 27 февраля 2019

Моя цель - разделять PDF каждый раз, когда в нем есть ключевое слово.Итак, у меня есть документ с множеством различных экспериментов, иногда два на одной странице, иногда один эксперимент на более чем 10 страницах. Моя цель - каждый раз, когда на сайте появляется «новый эксперимент».новый эксперимент снова появляется в собственном PDF.Я пытался написать код, но он не работает по-разному:

   import PyPDF2
        import re
        import os
        path = path
        file = open("path.pdf", "rb")
        pdfReader=PyPDF2.PdfFileReader(file)
        number_of_pages=pdfReader.numPages
        print(number_of_pages)
        list = []


        PageFound = -1
        Keyword = "experiment"
        for i in range(0, number_of_pages):
            content = ""
            content += pdfReader.getPage(i).extractText() + "\n"
            content1 = content.encode('ascii', 'ignore').lower()
            content2 = content1.decode(encoding="utf-8")
            ResSearch = re.search(Keyword, content2)
            print(ResSearch)
            if ResSearch is not None:
                  PageFound = i
                  list.append(i)
                  break

        #partially code from: https://stackoverflow.com/questions/12571905/finding-on-which-page-a-search-string-is-located-in-a-pdf-document-using-python

#problem here is that no elements can be added to the list, because it always returns none   


        fname = os.path.splitext(os.path.basename(path))[0]
        for page in list:
            while page <= list[list.index(page)+1)] in list
                pdf_writer = PdfFileWriter()
                pdf_writer.addPage(pdf.getPage(page))
                page = page + 1
                output_filename = '{}_page_{}.pdf'.format(
                fname, page+1)

            with open(output_filename, 'wb') as out:
                pdf_writer.write(out)

            print('Created: {}'.format(output_filename))

    #problem here starts, that I cannot command that it should add to the new pdf the sites until the keywords appears again

Если у кого-нибудь есть предложения по моему коду или, возможно, есть лучший, я был бы признателен за вашу помощь

Спасибомного

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...