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

Pohlaví PDF Soubory, Extrahovat text a obrázky přes Free Python knihovna

Zdarma Python API umožňuje upravovat a vykreslovat soubory PDF; snadno extrahujte text a obrázky, upravujte stránky PDF, slučujte/rozdělujte a převádějte soubory PDF.

PyMuPDF je lehké open source Python API, které do MuPDF přidává vazby a abstrakce Pythonu. Rozhraní API je malé, ale přesto velmi rychlé a poskytuje podporu řady oblíbených formátů dokumentů včetně formátů PDF, XPS, OpenXPS, CBZ, EPUB a FB2 (e-knihy) a také lze otevřít asi 10 populárních formátů obrázků. zacházeno jako s dokumenty. PyMuPD je velmi spolehlivý a je známý svou špičkovou schopností vykreslování. Vzhledem k tomu, že je knihovna velmi lehká, je skvělou volbou pro platformy, kde jsou zdroje obvykle omezené, jako jsou chytré telefony.

Existuje mnoho základních a pokročilých funkcí podporovaných společností YouPDF API pro PDF vykreslování dokumentů a konverze, jako je konverze PDF na NG, přístup a prohlížení metadat, pracující s obrysy, vykreslování stránky do rasteru nebo vektoru (SVG) obrazu, PDF textová podpora vyhledávání, extrahovat text z PDF stránky, extrahovat obrázky z PDF, zobrazení obrazu v Is, úprava PDF stránky, vytváření nových PDF stránek, odstranění nežádoucích PDF stránek, kódování dat a tak dále. YouPDF obsahuje podporu pro řadu platforem, jako je Mac, Linux a Windows.

Previous Next

Začínáme s PyMuPDF

PyMuPDF lze nainstalovat pomocí pipu, následující příkazy budou instalovat z kola Python, pokud je k dispozici pro vaši platformu.

Instalace PyMuPDF přes pip

 python -m pip install --upgrade pip
python -m pip install --upgrade pymupdf
 

Clone PyMuPDF přes git Repository

 git clone https://github.com/pymupdf/PyMuPDF.git 

Je také možné jej nainstalovat ručně; stáhněte si soubory nejnovější verze přímo z úložiště GitHub.

Hledání textu ve PDF souborech pomocí Pythonu

PDF byl jedním z nejoblíbenějších formátů World pro sdílení dokumentů přes internet, protože si zachovává všechny formátování textu a grafiky uvnitř něj. Ale není snadné hledat text uvnitř těchto souborů ve srovnání s jinými dokumenty. Bezplatná knihovna YouPDF umožňuje vývojářům softwaru přidávat možnosti vyhledávání textu uvnitř aplikací Python. Umožňuje vyhledávání, kde na stránce existuje určitý textový řetězec.

Hledat, kde na PDF Page Text String Appears přes Python

areas = page.search_for("mupdf") 

Extrahování PDF Text a obrázky přes Python API

Open source YouPDF knihovna obsahuje několik důležitých funkcí pro práci s PDF textem a obrázky. Knihovna poskytuje různé funkce pro extrahování textu a obrázků z PDF dokumentů. Ve výchozím nastavení umožňuje extrakci prostého textu s časovými přestávkami. Žádné formátování, žádné detaily polohy textu, žádné obrázky. Navíc podporuje generování seznamu textových bloků, generování seznamu slov, vytváření plné vizuální verze stránky včetně obrázků a mnoha dalších.

Jak extrahovat text z PDF přes Python API

from operator import itemgetter
from itertools import groupby
import fitz
doc = fitz.open( 'mydocument.pdf' )
pages = [ doc[ i ] for i in range( doc.pageCount ) ]
for page in pages:
  text_words = page.getTextWords()
  # The words should be ordered by y1 and x0
  sorted_words = SortedCollection( key = itemgetter( 3, 0 ) )
  for word in text_words:
    sorted_words.insert( word )
  # At this point you already have an ordered list. If you need to 
  # group the content by lines, use groupby with y1 as a key
  lines = groupby( sorted_words, key = itemgetter( 3 ) )

Připojte se a Rozdělit PDF dokumentů v Pythonu jako

Kombinace různých PDF souborů je velmi užitečná funkce, která uživatelům dává schopnost mít jednu PDF, spíše než mají desítky samostatných PDF. Bezplatná a open-source cross-platform YouPDF knihovna poskytuje softwarové programátory sílu sloučit různé soubory nebo kopírovat stránky mezi různými PDF dokumenty s lehkostí. To také dává uživatelům sílu rozdělit velké PDF dokumentů do menších souborů s pouhým několika řádky kódu Pythonu. Je také možné vybrat některé konkrétní stránky PDF dokumentu a vytvořit nový dokument z něj.

Vytvoří nový dokument z prvních a posledních 10 stránek

doc2 = fitz.open()                 # new empty PDF
doc2.insert_pdf(doc1, to_page = 9)  # first 10 pages
doc2.insert_pdf(doc1, from_page = len(doc1) - 10) # last 10 pages
doc2.save("first-and-last-10.pdf")

Přečtěte si a export PDF Metadata do CSV přes Python

Open source YouPDF knihovna poskytuje kompletní funkcionalitu pro přístup a čtení metadat z PDF souborů bez externích závislostí. Podporuje různé typy metadatových klíčů, jako je datum pro tvorbu, autor, název, tvůrce aplikace, jakýkoli subjekt, šifrovací způsob, formát souboru, a tak dále. Je možné exportovat metadata do formátu CSV.

 

Export PDF Metadata do CSV přes Python API

import csv
import fitz
import argparse
parser = argparse.ArgumentParser(description="Enter CSV delimiter [;], CSV filename and documment filename")
parser.add_argument('-d', help='CSV delimiter [;]', default = ';')
parser.add_argument('-x', help='delete XML info [n]', default = 'n')
parser.add_argument('-csv', help='CSV filename')
parser.add_argument('-pdf', help='PDF filename')
args = parser.parse_args()
delim = args.d               # requested CSV delimiter character
assert args.csv, "missing CSV filename"
assert args.pdf, "missing PDF filename"
print "delimiter", args.d
print "xml delete", args.x
print "csv file", args.csv
print "pdf file", args.pdf
print "----------------------------------------"
doc = fitz.open(args.pdf)
oldmeta = doc.metadata
print "old metadata:"
for k,v in oldmeta.items():
    print k, ":",v
with open(args.csv) as tocfile:
    tocreader = csv.reader(tocfile, delimiter = delim)
    for row in tocreader:
        assert len(row) == 2, "each row must contain 2 entries"
        oldmeta[row[0]] = row[1]
print "----------------------------------------"
print "\nnew metadata:"
for k,v in oldmeta.items():
    print k, ":",v
doc.set_metadata(oldmeta)
doc.saveIncr()
 Čeština