1. produkty
  2.   PDF
  3.   Python
  4.   Pypdf2
 
  

Vyvíjejte aplikace pro práci s PDF prostřednictvím knihovny Python

Open Source Python API schopné rozdělovat, slučovat, ořezávat a transformovat stránky souborů PDF, přidávat do PDF vlastní data a hesla.

PyPDF2 je open source čistá knihovna Pythonu, která poskytuje možnost pracovat se soubory PDF v aplikacích Pythonu bez jakýchkoli externích závislostí. Knihovna obsahuje podporu pro řadu důležitých funkcí PDF, jako je slučování více souborů PDF, extrahování obsahu souboru PDF, otáčení stránek souboru PDF o úhel, změna měřítka stránek PDF, transformace stránek souborů PDF, extrahování obrázků ze stránek PDF a mnoho dalších.

Open source programovací knihovna PyPDF2 se velmi snadno používá a zdrojový kód je dobře zdokumentovaný a snadno pochopitelný. Knihovna umožňuje vývojářům číst a extrahovat metadata souborů PDF, jako je počet stránek, autor, tvůrce, čas vytvoření a poslední aktualizace atd. Knihovna také podporuje šifrování a dešifrování souborů PDF pomocí pouhých několika řádků kódu Python.

.

Previous Next

Začínáme s PyPDF2

PyPDF2 není součástí standardní knihovny Python, takže si jej budete muset nainstalovat sami. Preferovaný způsob, jak toho dosáhnout, je použít pip.

Nainstalujte PyPDF2 přes pip

 python -m pip install pypdf2  

Extrahujte text z PDF přes Python

Knihovna PyPDF2 poskytuje možnost programově extrahovat text ze souborů PDF prostřednictvím Pythonu. Není snadné načíst data ze souboru PDF, protože způsob, jakým PDF ukládá informace, jen ztěžuje jejich dosažení. PyPDF2 usnadňuje vývojářům práci tím, že jim poskytuje snadno použitelné vestavěné funkce pro získávání informací. Mohou použít metodu extractText() na objektu stránky k získání textového obsahu stránky.

Extrahujte text z PDF pomocí Pythonu

 // extract text from a PDF
  from PyPDF2 import PdfReader
  reader = PdfReader("example.pdf")
  page = reader.pages[0]
  print(page.extract_text()) 

Čtení souborů PDF přes Python

Knihovna PyPDF2 poskytuje možnost programově extrahovat text ze souborů PDF prostřednictvím Pythonu. Není snadné načíst data ze souboru PDF, protože způsob, jakým PDF ukládá informace, jen ztěžuje jejich dosažení. PyPDF2 usnadňuje práci vývojářů tím, že jim poskytuje snadno použitelné vestavěné funkce pro získávání informací. Mohou použít metodu extractText() na objektu stránky k získání textového obsahu stránky.

Čtení souboru PDF přes Python

 // Reading text from a PDF
    from PyPDF2 import PdfReader
  reader = PdfReader("example.pdf")
  for page in reader.pages:
    if "/Annots" in page:
      for annot in page["/Annots"]:
        subtype = annot.get_object()["/Subtype"]
        if subtype == "/Text":
          print(annot.get_object()["/Contents"]) 

Sloučit nebo rozdělit dokumenty PDF

Byli jste někdy v situaci, kdy jste potřebovali sloučit dva nebo více souborů PDF do jednoho dokumentu? Organizace často vyžaduje sloučení více souborů PDF do jednoho dokumentu. Knihovna PyPDF2 poskytuje možnost kombinovat soubory PDF s několika řádky kódu Python. Vývojáři mohou také snadno rozdělit velké PDF dokumenty na menší podle svých potřeb. Vývojáři mohou snadno extrahovat konkrétní část knihy PDF nebo ji rozdělit do více souborů PDF

Sloučit soubory PDF přes Python

 // Merge PDF files 
  from PyPDF2 import PdfMerger
  merger = PdfMerger()
  for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
    merger.append(pdf)
  merger.write("merged-pdf.pdf")
  merger.close()

Extrahujte metadata ze souborů PDF

Knihovna PyPDF2 obsahuje funkce pro extrahování metadat z dokumentů PDF pomocí několika příkazů Pythonu. Můžete snadno získat informace o autorovi, aplikaci tvůrce, počtu stránek, názvu dokumentu a datu vytvoření atd. Můžete snadno extrahovat metadata dokumentů PDF a použít je podle svých potřeb.

 

Extrahujte metadata z PDF přes Python

 // Reading PDF Metadata 
  from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
meta = reader.metadata
print(len(reader.pages))
# All of the following could be None!
print(meta.author)
print(meta.creator)
print(meta.producer)
print(meta.subject)
print(meta.title)
 Čeština