
Jak wygenerować raport PDF w języku Python
Generowanie raportów w formacie PDF jest powszechnym wymaganiem w analizie danych i pracy analityków danych. IronPDF to wszechstronna biblioteka, która umożliwia tworzenie plików tabel PDF w aplikacjach napisanych w języku Python, podobnie jak biblioteka FPDF w PHP. Ten samouczek poprowadzi Cię przez proces używania IronPDF do tworzenia i zapisywania raportów w formacie PDF na podstawie szablonów HTML lub adresów URL, co może być czasochłonne, jeśli nie zostanie wykonane prawidłowo.
IronPDF: biblioteka PDF dla języka Python
IronPDF to kompleksowa biblioteka przeznaczona dla aplikacji w języku Python, służąca do tworzenia plików PDF, edycji i wyodrębniania treści z plików PDF. To potężne narzędzie, które zaspokaja potrzeby inżynierów oprogramowania, którzy często stają przed wyzwaniem generowania końcowych wyników dla dokumentów PDF z różnych źródeł danych lub szablonów. Dzięki IronPDF użytkownicy mogą bez wysiłku przekształcać treści HTML lub adresy URL w pliki PDF, manipulować treścią plików PDF oraz integrować te funkcje z projektami w języku Python, co czyni tę bibliotekę niezbędną dla każdego programisty Python zajmującego się generowaniem i edycją plików PDF.
IronPDF umożliwia również tworzenie interaktywnych formularzy, dzielenie i łączenie plików PDF, wyodrębnianie tekstu i obrazów z plików PDF, wyszukiwanie określonych słów w pliku PDF, rasteryzację stron PDF do obrazów, a także drukowanie plików PDF.
Wymagania wstępne
Pierwszym krokiem jest upewnienie się, że spełniasz następujące wymagania wstępne:
- Python 3.7 lub nowszy zainstalowany w systemie.
- Zainstalowane środowisko uruchomieniowe .NET 6.0, ponieważ biblioteka IronPDF opiera się na .NET 6.0 jako technologii bazowej.
Środowisko uruchomieniowe .NET 6.0 można zainstalować z oficjalnej strony pobierania .NET.
Instalacja
Aby korzystać z IronPDF, należy zainstalować pakiet za pomocą pip:
Zainstaluj IronPDF
IronPDF automatycznie pobierze dodatkowe zależności przy pierwszym uruchomieniu.
Tworzenie prostego dokumentu PDF
Oto przykładowy kod służący do wygenerowania prostego dokumentu PDF przy użyciu szablonu HTML:
from ironpdf import ChromePdfRenderer
# Create a PDF renderer using the ChromePdfRenderer class
renderer = ChromePdfRenderer()
# Render an HTML string as a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
# Save the rendered PDF to a file
pdf.SaveAs("hello_world.pdf")
Ten fragment kodu konwertuje ciąg znaków HTML na plik PDF i zapisuje go w tym samym folderze, co skrypt w języku Python.
Generowanie pliku PDF z adresu URL
IronPDF może również utworzyć plik PDF na podstawie adresu URL strony internetowej przy użyciu następującego przykładowego kodu:
from ironpdf import ChromePdfRenderer
# Create a PDF renderer using the ChromePdfRenderer class
renderer = ChromePdfRenderer()
# Render a URL as a PDF document
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/python/")
# Save the rendered PDF to a file
pdf.SaveAs("website_snapshot.pdf")
Generowanie raportów PDF z ramkami danych
Tworzenie profesjonalnie wyglądających raportów PDF jest proste dzięki IronPDF i Pythonowi. Oto jak można wygenerować rozbudowany raport przy użyciu szczegółowych ram danych i dostosowanego stylu HTML:
Krok 1: Importowanie bibliotek
Najpierw należy zaimportować wymagane biblioteki. ChromePdfRenderer z IronPDF jest niezbędny w procesie generowania PDF. Ta biblioteka umożliwia konwersję treści HTML do dokumentów PDF. Dodatkowo zaimportuj pandas, potężną bibliotekę do manipulacji danymi, aby tworzyć ramki danych i zarządzać nimi. Do uporządkowania danych raportu w formacie tabelarycznym zostanie użyta biblioteka Pandas.
from ironpdf import ChromePdfRenderer
import pandas as pd
Krok 2: Konfiguracja klucza licencyjnego
Aby aktywować IronPDF, należy ustawić klucz licencyjny. Ten krok jest kluczowy, ponieważ odblokowuje wszystkie funkcje IronPDF, umożliwiając generowanie plików PDF bez znaków wodnych i ograniczeń. Jest to prosty, ale niezbędny krok do profesjonalnego korzystania z biblioteki.
License.LicenseKey = "Your-License-Key"
Krok 3: Tworzenie ramki danych
W tym miejscu utworzysz ramkę danych przy użyciu biblioteki Pandas. Ta ramka danych służy jako źródło danych dla raportu. Podany przykład zawiera szczegółowe informacje o pracownikach, demonstrując możliwości biblioteki Pandas w zakresie przetwarzania i strukturyzowania złożonych zbiorów danych. Ramkę danych można dostosować w oparciu o specyfikę raportu, który zamierzasz stworzyć.
data = {
'Employee ID': [101, 102, 103, 104],
'Name': ['John Doe', 'Alice Smith', 'Bob Johnson', 'Emily Davis'],
'Age': [28, 34, 45, 29],
'Department': ['Sales', 'HR', 'IT', 'Marketing'],
'City': ['New York', 'London', 'San Francisco', 'Berlin']
}
df = pd.DataFrame(data)
Krok 4: Projektowanie szablonu HTML
W tym kroku zaprojektujesz szablon HTML ze stylami CSS. Ten szablon określa wygląd raportu w formacie PDF. Stylizacja CSS poprawia atrakcyjność wizualną i czytelność danych przedstawionych w raporcie. Dynamiczne wstawianie ramki danych do tego szablonu HTML odbywa się za pomocą formatowania ciągów znaków w języku Python.
# HTML styling for the PDF report
html_style="""
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
padding: 5px;
text-align: left;
}
th {
background-color: #f2f2f2;
}
</style>
</head>
<body>
<h2>Company Employee Report</h2>
{table}
</body>
</html>
"""
# Replace {table} with the HTML representation of the data frame
html_content = html_style.format(table=df.to_html(index=False, border=0))
Krok 5: Renderowanie i zapisywanie pliku PDF
Na koniec użyj ChromePdfRenderer firmy IronPDF, aby przekonwertować zawartość HTML na dokument PDF. Metoda RenderHtmlAsPdf przetwarza kod HTML i CSS, konwertując go na plik PDF. Następnie funkcja SaveAs służy do zapisania tego pliku, co skutkuje dobrze sformatowanym, atrakcyjnym wizualnie raportem w formacie PDF. Ten etap obejmuje proces konwersji, łącząc dane i szablon w ostateczny dokument.
# Render the HTML string to a PDF document
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(html_content)
# Save the rendered PDF to a file
pdf.SaveAs("enhanced_employee_report.pdf")
Wynik
Oto raport wyjściowy w formacie PDF:
Raport pracownika firmy
Tworzenie prostego dokumentu PDF
Oto przykładowy kod służący do wygenerowania prostego dokumentu PDF przy użyciu szablonu HTML:
from ironpdf import ChromePdfRenderer
# Create a PDF renderer using the ChromePdfRenderer class
renderer = ChromePdfRenderer()
# Render an HTML string as a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
# Save the rendered PDF to a file
pdf.SaveAs("hello_world.pdf")
Ten fragment kodu konwertuje ciąg znaków HTML na plik PDF i zapisuje go w tym samym folderze, co skrypt w języku Python.
Generowanie pliku PDF z adresu URL
IronPDF może również utworzyć plik PDF na podstawie adresu URL strony internetowej przy użyciu następującego przykładowego kodu:
from ironpdf import ChromePdfRenderer
# Create a PDF renderer using the ChromePdfRenderer class
renderer = ChromePdfRenderer()
# Render a URL as a PDF document
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/python/")
# Save the rendered PDF to a file
pdf.SaveAs("website_snapshot.pdf")
Spowoduje to zapisanie migawki PDF określonej strony internetowej.
Wnioski
IronPDF to potężne narzędzie dla programistów Pythona i analityków danych do generowania raportów PDF. Postępując zgodnie z tym przewodnikiem, możesz łatwo zintegrować generowanie plików PDF ze swoimi projektami w języku Python, niezależnie od tego, czy tworzysz pliki PDF na podstawie szablonów HTML, adresów URL czy ram danych. Pamiętaj, aby zapoznać się z obszerną dokumentacją i przykładami IronPDF, aby w pełni wykorzystać jego możliwości do zadań związanych z plikami PDF, takich jak dodawanie wykresów kołowych.
Wypróbuj różne funkcje i opcje oferowane przez IronPDF, aby tworzyć raporty PDF dostosowane do Twoich potrzeb. Dzięki odpowiedniemu podejściu zadanie, które wydaje się czasochłonne, może stać się wydajną i zautomatyzowaną częścią Twojego przepływu pracy.
IronPDF oferuje bezpłatną wersję próbną, umożliwiającą użytkownikom pełne zapoznanie się z jego funkcjami przed podjęciem decyzji o zakupie. Ponadto jest on bezpłatny do celów programistycznych, stanowiąc opłacalne rozwiązanie dla programistów na etapie tworzenia oprogramowania. Do komercyjnego wdrożenia, licencjonowanie dla IronPDF zaczyna się od $999, zaspokajając potrzeby na poziomie profesjonalnym i Enterprise.

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.
Powiązane artykuły


