Как объединить PDF с помощью pdfbox в python с помощью подпроцесса? - PullRequest
0 голосов
/ 04 мая 2020

Мне удалось объединить PDF-файлы с помощью PyPDF, и все работает отлично. Теперь я хотел бы объединить pfd с использованием pdfbox, используя подпроцесс в python.

Это то, что я получил, но он работает не так, как ожидалось.

import subprocess
from subprocess import Popen

def merger(pdfList):
    try:
        output = "output.pdf"
        result = Popen(["java", "-jar", "pdfbox-app-2.0.19.jar", "PDFMerger", "\
        {}".format(pdfList), "{}".format(output)], stdout=subprocess.PIPE, \
        stderr=subprocess.PIPE)
        result_subprocess = result.communicate()
        if result.returncode != 0 or len(result_subprocess[1])>0:
            raise Exception(result_subprocess[1].decode())
        else:
            return True
    except Exception as e:
        print("Exception:",str(e))

if __name__ == '__main__':
    pdfList = ["33.pdf","4.pdf"]
    merger(pageList)

Это исключение, которое Я столкнулся.

('Exception:', 'Usage: java -jar pdfbox-app-x.y.z.jar PDFMerger <inputfiles 2..n> <outputfile>\n\nOptions:\n <inputfiles 2..n> : 2 or more source PDF documents to merge\n <outputfile> 
...