PyPDF2 modülü dosya birleştirme sorunu

Merhaba değerli hocalarım,

Aşağıdaki kodla iki tane pdf dosyasını birleştiriyorum ancak ilk dosya iki defa kaydediliyor. Bu sorunun nereden kaynaklandığını çözemedim.

from PyPDF2 import PdfFileWriter, PdfFileReader

import PyPDF2

def pdfbirlestir(bir,iki):

    pdf_merger = PyPDF2.PdfFileMerger()

    for pdf_file_name in [bir,iki]:

        with open(pdf_file_name, 'rb') as pdf_file:

            pdf_merger.append(pdf_file)

            with open('birlesim.pdf', 'wb') as pdf_file_merged:

                pdf_merger.write(pdf_file_merged)

pdfbirlestir("pervane0.pdf","pervane1.pdf")

Merhaba.

Yazma işini döngü içinde değil döngü bittikten sonra yapmanız lazım.

döngünün dışına çıkarınca dosya oluşuyor ancak içi boş.

Sorunu halen çözemedim?

Şunu denediniz ve olmadı mı?

from PyPDF2 import PdfFileWriter, PdfFileReader

import PyPDF2


def pdfbirlestir(bir,iki):
    pdf_merger = PyPDF2.PdfFileMerger()
    for pdf_file_name in [bir,iki]:
        with open(pdf_file_name, 'rb') as pdf_file:
            pdf_merger.append(pdf_file)
    with open('birlesim.pdf', 'wb') as pdf_file_merged:
        pdf_file_merged.write(pdf_merger)


pdfbirlestir("pervane0.pdf","pervane1.pdf")

olmuyor hocam. 2 sayfa çıkıyor ancak ikisi de boş durumda.

Aşağıdaki ifadeden olsa gerek, ters yazılmış.

    with open('birlesim.pdf', 'wb') as pdf_file_merged:
        pdf_merger.write(pdf_file_merged)

Şöyle değiştirin:

    with open('birlesim.pdf', 'wb') as pdf_file_merged:
        pdf_file_merged.write(pdf_merged)

Düzeltilmiş halini bir daha dener misiniz?

from PyPDF2 import PdfFileWriter, PdfFileReader

import PyPDF2


def pdfbirlestir(bir,iki):
    pdf_merger = PyPDF2.PdfFileMerger()
    for pdf_file_name in [bir,iki]:
        with open(pdf_file_name, 'rb') as pdf_file:
            pdf_merger.append(pdf_file)
    with open('birlesim.pdf', 'wb') as pdf_file_merged:
        pdf_file_merged.write(pdf_merger)


pdfbirlestir("pervane0.pdf","pervane1.pdf")

Aşağıdaki hatayı veriyor

Traceback (most recent call last):
  File "dene.py", line 15, in <module>
    pdfbirlestir("pervane0.pdf","pervane1.pdf")
  File "dene.py", line 12, in pdfbirlestir
    pdf_file_merged.write(pdf_merger)
TypeError: a bytes-like object is required, not 'PdfFileMerger'

Modülü bir inceleyeyim, çözümünü bulursam paylaşırım sizinle.

Tamam, aşağıdaki yolu deneyin.

def pdfbirlestir(bir, iki):
    pdf_merger = PyPDF2.PdfFileMerger()
    for file in [bir, iki]:
        pdf_merger.append(file)
    pdf_merger.write("sonuc.pdf")
    pdf_merger.close()
1 Beğeni

Çok teşekkürler hocam. oldu.