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

Gender PDF Pliki, Ekstrakt tekstu i zdjęć za pośrednictwem Free Python Library

Bezpłatny Python API pozwala edytować i renderować PDF plików; wyodrębnić tekst i obrazy, edytować PDF stron, połączyć/split & convert PDFs z łatwością.

PyMuPDF jest lekkim open source Python API który dodaje wiązania Pythona i abstrakcji do PDF. API jest małe rozmiary, ale jednak bardzo szybkie i dostarczone obsługuje wiele popularnych formatów dokumentów, w tym PDF, XPS, OpenXPS, CB, PUB i FB2 (eBooks) formaty mogą być również otwarte. PyMuPD jest bardzo niezawodny i jest znany ze swojej najwyższej możliwości renderowania. Ponieważ biblioteka jest bardzo lekka waga sprawia, że wielki wybór dla platform, gdzie zasoby są zwykle ograniczone, jak smartfony.

Istnieje wiele podstawowych i zaawansowanych funkcji obsługiwanych przez YouPDF API dla PDF renderowania dokumentów i konwersji, takich jak konwersja PDF do NG, dostęp i przeglądanie metadanych, praca z rysunków, renderowanie strony PyMuPDF zawiera wsparcie dla wielu platform, takich jak Mac, Linux i Windows.

Previous Next

Zaczyna się od PyMuPDF

PyMuPDF może być zainstalowany za pomocą rurociągów, następujące polecenia zostaną zainstalowane z koła Pythona, jeśli jeden jest dostępny dla platformy.

Zainstaluj PyMuPDF przez rurociąg

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

Klon PyMuPDF za pośrednictwem git Repository

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

Możliwa jest również instalacja ręczna; pobierz pliki najnowszej wersji bezpośrednio z repozytorium GitHub.

Szukaj tekstu w PDF plikach przez Python

PDF jest jednym z ulubionych formatów plików na świecie do udostępniania dokumentów przez internet, ponieważ zachowuje wszystkie formatowanie tekstu i grafikę wewnątrz niego. Ale nie jest łatwo wyszukać tekst w tych plikach w porównaniu z innymi dokumentami. Wolna biblioteka PyMuPDF umożliwia programistom dodawanie funkcji wyszukiwania tekstu do aplikacji Python. Umożliwia wyszukiwanie, gdzie na stronie istnieje pewien ciąg tekstowy.

Szukaj Gdzie na PDF Strona tekst String pojawia się poprzez Python

areas = page.search_for("mupdf") 

Wyciąg PDF Tekst i zdjęcia za pośrednictwem Python API

Otwarta biblioteka YouPDF zawiera kilka ważnych funkcji do pracy z PDF tekstami i obrazami. Biblioteka zapewniła różne funkcje do wyciągania tekstu, a także obrazy z PDF dokumentów. Domyślnie pozwala na ekstrakcję prostego tekstu z przerwami linii. Brak formatowania, brak danych o pozycji tekstu, brak zdjęć. Ponadto obsługuje generowanie listy bloków tekstowych, tworząc listę słów, tworząc pełną wizualną wersję strony, w tym wszelkie obrazy i wiele innych.

Jak usunąć tekst z PDF przez 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 ) )

Dołącz do Splitu PDF Dokumenty w Python As

Połączenie różnych PDF plików jest bardzo przydatną cechą, która daje użytkownikom możliwość posiadania jednego PDF zamiast kilkudziesięciu osobnych PDF-tych. Darmowe i otwarte źródła cross-platform biblioteki YouPDF daje programistom oprogramowania moc do łączenia różnych plików lub kopiowania stron między różnymi PDF dokumentów z łatwością. Daje również użytkownikom możliwość podzielenia dużych PDF dokumentów na mniejsze pliki za pomocą zaledwie kilku linii kodu Pythona. Możliwe jest również wybranie niektórych konkretnych stron dokumentu PDF i stworzenie z niego nowego dokumentu.

Tworzy nowy dokument od pierwszej i ostatniej 10 stron

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")

Read & Export PDF Metadata do CSV przez Python

Otwarta biblioteka YouPDF zapewnia pełną funkcjonalność w zakresie dostępu do i odczytu metadanych PDF plików bez żadnych zewnętrznych zależności. Obsługuje różne rodzaje kluczy metadanych, takich jak data utworzenia, autor, tytuł, aplikacja twórcza, dowolny przedmiot, metoda szyfrowania, format pliku i tak dalej. Możliwe jest również eksport metadanych do CSV formatu.

 

Wywóz PDF Metadanych do CSV przez 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()
 Polski