Avoimen lähdekoodin Python PDF Parser Library
Jäsennä PDF ja poimi tekstiä, kuvia ja liitteitä PDF-dokumenteista ilmaisella Python-kirjastolla.
Mikä on pypdf?
Pypdf on arvokas avoimen lähdekoodin Python-kirjasto, joka tunnetaan erilaisten PDF-toimintojen taidosta. Tämä kirjasto pystyy käsittelemään monia PDF-tiedostoihin liittyviä tehtäviä ja toimintoja, mutta tällä sivulla keskitymme vain sen PDF-jäsennysominaisuuksiin.
Huomattavia pypdf:n jäsennysominaisuuksia ovat:
- PDF-tiedostojen lukeminen: Pypdf:llä voit avata ja lukea/jäsentää PDF-tiedostoja, mikä helpottaa tekstin ja muiden tietojen poimia olemassa olevista PDF-dokumenteista.
- Sisällön purkaminen: Voit jäsentää ja poimia PDF-dokumenteista tekstiä, kuvia ja liitteitä tarpeidesi mukaan.
GitHub-tilastot
Nimi: pypdfKieli: Python
Tähdet: 8.9K
Haarukat: 1.5K
Lisenssi: Other
Arkisto päivitettiin viimeksi klo 2025-04-15
pypdf:n käytön aloittaminen
Tarvitset Python-version 3.6.0 tai uudemman pypdf:n asentamiseen ja käyttämiseen. Joten asenna ensin Python ja asenna sitten pypdf koneellesi alla olevien komentojen avulla käyttämällä pip ja virtuaaliympäristö a>.
Linux
python3 -m venv venv
source venv/bin/activate
pip install pypdf
MacOS
python -m venv venv
source venv/bin/activate
pip install pypdf
Windows
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
Poimi teksti PDF-tiedostosta
Please check below code snippet for example:# Import the PdfReader class from the pypdf library | |
from pypdf import PdfReader | |
# Open the PDF file" | |
reader = PdfReader("documentprocessing.pdf") | |
# Iterate through all the pages in the PDF document | |
for i in reader.pages: | |
# Extract and print the text content of each page | |
print(i.extract_text()) |
Lähtö
Alla olevassa kuvassa näkyy poimittu teksti PDF-tiedostosta
Pura kuvat PDF-tiedostosta
Voimme käyttää pypdf-kirjastoa kuvien poimimiseen PDF-dokumentista. Kuvien poimimiseen tarvitaan lisäkirjasto nimeltä tyyny. Se toistuu jokaisen sivun läpi, tunnistaa kuvat ja tallentaa ne erillisiksi kuvatiedostoiksi säilyttäen niiden alkuperäiset nimet. Tarkista esimerkiksi alla oleva koodinpätkä:
# Import the PdfReader class from the pypdf library | |
from pypdf import PdfReader | |
# Open the PDF file | |
reader = PdfReader("data.pdf") | |
# Initialize a counter to keep track of the extracted images | |
count = 0 | |
# Iterate through each page in the PDF document | |
for page in reader.pages: | |
# Iterate through the images on the current page | |
for image_file_object in page.images: | |
# Open and write the image data | |
with open(str(count) + image_file_object.name, "wb") as fp: | |
fp.write(image_file_object.data) | |
count += 1 |
Lähtö
Yllä olevalla koodilla lisätty teksti on korostettu alla olevassa punaisessa laatikossa
Pura liitteet PDF-tiedostosta
pypdf-kirjaston avulla voit purkaa ja tallentaa liitteitä PDF-dokumentista. Se toistuu liitteiden ja niiden sisällön läpi ja tallentaa ne erillisiin tiedostoihin. Tarkista esimerkiksi alla oleva koodinpätkä:
# Import the PdfReader class from the pypdf library | |
from pypdf import PdfReader | |
# Open a PDF file | |
reader = PdfReader("data.pdf") | |
# Iterate through the attachments in the PDF | |
for name, content_list in reader.attachments: | |
# Iterate through the contents in each attachment | |
for i, content in enumerate(content_list): | |
# Open a new file for writing the attachment content | |
with open(f"{name}-{i}", "wb") as fp: | |
fp.write(content) |
Johtopäätös
Yhteenvetona voidaan todeta, että pypdf erottuu monipuolisena Python-kirjastona ominaisuuksien poimimiseen PDF-dokumenteista. Se tarjoaa vankat ominaisuudet tekstin, kuvien ja liitteiden jäsentämiseen, mikä tekee siitä arvokkaan työkalun tiedon poimimiseen, analysointiin ja asiakirjojen hallintaan.
On kuitenkin tärkeää huomata, että pypdf voi aiheuttaa satunnaisia ongelmia tekstin purkamisessa, kuten ylimääräisiä välilyöntejä sanojen ja merkkien välillä, mikä voi vaikuttaa poimitun sisällön tarkkuuteen. Tästä rajoituksesta huolimatta pypdf on edelleen arvokas voimavara PDF-tiedostojen jäsentämisessä, varsinkin tilanteissa, joissa tekstin tarkka muotoilu ei ole ensisijainen huolenaihe.