from ironpdf import *
# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
# Export to a file or Stream
pdf.SaveAs("output.pdf")
# Advanced Example with HTML Assets
# Load external html assets: Images, CSS and JavaScript.
# An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", r"C:\site\assets")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
PyArrow ist eine leistungsstarke Bibliothek, die eine Python-Schnittstelle zum Apache Arrow-Framework bietet. Apache Arrow ist eine sprachenübergreifende Entwicklungsplattform für In-Memory-Daten. Es spezifiziert ein standardisiertes, sprachunabhängiges spaltenbasiertes Speicherformat für flache und hierarchische Daten, das für effiziente analytische Operationen auf moderner Hardware organisiert ist. PyArrow ist im Wesentlichen Apache Arrow Python-Bindungen, die als Python-Paket realisiert wurden. PyArrow ermöglicht einen effizienten Datenaustausch und die Interoperabilität zwischen verschiedenen Datenverarbeitungssystemen und Programmiersprachen. Später in diesem Artikel werden wir auch über IronPDF lernen, eine von Iron Software entwickelte PDF-Erstellungsebibliothek.
Hauptmerkmale von PyArrow
Spaltenorientiertes Speicherformat:
PyArrow verwendet ein spaltenförmiges Speicherformat, das sehr effizient für speicherinterne Analyseoperationen ist. Dieses Format ermöglicht eine bessere Nutzung des CPU-Cache und vektorisierte Operationen, was es ideal für Datenverarbeitungsaufgaben macht. PyArrow kann aufgrund seiner spaltenförmigen Natur effizient Parkett-Dateistrukturen lesen und schreiben.
Interoperabilität: Einer der Hauptvorteile von PyArrow ist seine Fähigkeit, den Datenaustausch zwischen verschiedenen Programmiersprachen und Systemen zu ermöglichen, ohne dass eine Serialisierung oder Deserialisierung erforderlich ist. Dies ist besonders nützlich in Umgebungen, in denen mehrere Sprachen verwendet werden, wie z. B. in der Datenwissenschaft und beim maschinellen Lernen.
Integration mit Pandas: PyArrow kann als Backend für Pandas verwendet werden, was eine effiziente Datenmanipulation und -speicherung ermöglicht. Ab Pandas 2.0 ist es möglich, Daten in Arrow-Arrays anstelle von NumPy-Arrays zu speichern, was zu Leistungsverbesserungen führen kann, insbesondere beim Umgang mit String-Daten.
Unterstützung für verschiedene Datentypen: PyArrow unterstützt eine Vielzahl von Datentypen, einschließlich primitiver Typen (Ganzzahlen, Gleitkommazahlen), komplexer Typen (Strukturen, Listen) und verschachtelter Typen. Dadurch ist es vielseitig einsetzbar für die Verarbeitung unterschiedlicher Datenarten.
Zero-Copy Lesevorgänge: PyArrow ermöglicht Zero-Copy Lesevorgänge, was bedeutet, dass Daten aus dem Arrow-Speicherformat gelesen werden können, ohne sie zu kopieren. Dies reduziert den Speicher-Overhead und erhöht die Leistung.
Einrichtung
Um PyArrow zu installieren, können Sie entweder pip oder conda verwenden:
pip install pyarrow
pip install pyarrow
SHELL
oder
conda install pyarrow -c conda-forge
py
PYTHON
Grundlegende Verwendung
Wir verwenden Visual Studio Code als Code-Editor. Beginnen Sie mit der Erstellung einer neuen Datei, pyarrowDemo.py.
Hier ist ein einfaches Beispiel dafür, wie man PyArrow verwendet, um eine Tabelle zu erstellen und einige grundlegende Operationen durchzuführen:
import pyarrow as pa
import pyarrow.dataset as pt
# Create a PyArrow table
data = [
pa.array([1, 2, 3]),
pa.array(['a', 'b', 'c']),
pa.array([1.1, 2.2, 3.3])
]
table = pa.Table.from_arrays(data, names=['col1', 'col2', 'col3'])
# Display the table
print(table)
py
PYTHON
Code Erläuterung
Der Python-Code verwendet PyArrow, um eine Tabelle (`pa.Table`) aus drei Arrays (`pa.array`) zu erstellen. Anschließend wird die Tabelle mit den Spalten 'col1', 'col2' und 'col3' ausgedruckt, die jeweils entsprechende Daten in Form von Ganzzahlen, Strings und Floats enthalten.
OUTPUT
Integration mit Pandas
PyArrow kann nahtlos mit Pandas integriert werden, um die Leistung zu verbessern, insbesondere bei der Verarbeitung großer Datensätze. Hier ist ein Beispiel für die Konvertierung eines Pandas DataFrame in eine PyArrow Table:
import pandas as pd
import pyarrow as pa
# Create a Pandas DataFrame
df = pd.DataFrame({
'col1': [1, 2, 3],
'col2': ['a', 'b', 'c'],
'col3': [1.1, 2.2, 3.3]
})
# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)
# Display the table
print(table)
py
PYTHON
Code Erläuterung
Der Python-Code konvertiert ein Pandas DataFrame in eine PyArrow-Tabelle (pa.Table) und gibt dann die Tabelle aus. Das DataFrame besteht aus drei Spalten (col1, col2, col3) mit Integer-, String- und Float-Daten.
OUTPUT
Erweiterte Funktionen
1. Dateiformate
PyArrow unterstützt das Lesen und Schreiben verschiedener Dateiformate wie Parquet und Feather. Diese Formate sind auf Leistung optimiert und werden häufig in Datenverarbeitungspipelines verwendet.
2. Speicher-Mapping
PyArrow unterstützt memory-mapped file access, was ein effizientes Lesen und Schreiben großer Datensätze ermöglicht, ohne den gesamten Datensatz in den Speicher zu laden.
3. Kommunikation zwischen Prozessen
PyArrow bietet Werkzeuge für die Kommunikation zwischen Prozessen, die einen effizienten Datenaustausch zwischen verschiedenen Prozessen ermöglichen.
Einführung in IronPDF
IronPDF ist eine Bibliothek für Python, die das Arbeiten mit PDF-Dateien erleichtert und Aufgaben wie das Erstellen, Bearbeiten und Programmieren von PDF-Dokumenten ermöglicht. Es bietet Funktionen wie Erstellen von PDFs aus HTML, Hinzufügen von Text, Bildern und Formen zu vorhandenen PDFs sowie Extrahieren von Text und Bildern aus PDF-Dateien. Hier sind einige der wichtigsten Merkmale
PDF-Erzeugung aus HTML
IronPDF kann HTML-Dateien, HTML-Strings und URLs problemlos in PDF-Dokumente umwandeln. Nutzen Sie den Chrome-PDF-Renderer, um Webseiten direkt in das PDF-Format zu rendern.
Plattformübergreifende Kompatibilität
IronPDF ist mit Python 3+ kompatibel und funktioniert nahtlos auf Windows, Mac, Linux und Cloud-Plattformen. Es wird auch in .NET, Java, Python und Node.js unterstützt. umgebungen.
Benutzerdefinierte Seitenvorlagen und Einstellungen
Mit IronPDF können Sie PDFs mit anpassbaren Kopf- und Fußzeilen, Seitenzahlen und einstellbaren Rändern gestalten. Es unterstützt responsive Layouts und ermöglicht die Einstellung benutzerdefinierter Papiergrößen.
Einhaltung von Normen
IronPDF ist konform mit den PDF-Standards, einschließlich PDF/A und PDF/UA. Unterstützt UTF-8-Zeichencodierung und verarbeitet nahtlos Assets wie Bilder, CSS-Stile und Schriftarten.
Erzeugen von PDF-Dokumenten mit IronPDF und PyArrow
IronPDF-Voraussetzungen
IronPDF verwendet .NET 6.0 als zugrunde liegende Technologie. Sie haben also die .NET 6.0-Laufzeitumgebung auf Ihrem System installiert.
Python 3.0+: Sie müssen Python Version 3 oder höher installiert haben.
pip: Installieren Sie den Python-Paket-Installer pip zur Installation des IronPDF-Pakets.
Installieren Sie die erforderlichen Bibliotheken:
pip install pyarrow
pip install ironpdf
pip install pyarrow
pip install ironpdf
SHELL
Fügen Sie dann den folgenden Code ein, um die Verwendung der Python-Pakete IronPDF und pyarrow zu demonstrieren
import pandas as pd
import pyarrow as pa
from ironpdf import *
# Apply your license key
License.LicenseKey = "license"
# Create a Pandas DataFrame
df = pd.DataFrame({
'col1': [1, 2, 3],
'col2': ['a', 'b', 'c'],
'col3': [1.1, 2.2, 3.3]
})
# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)
# Display the table
print(table)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with pyarrow</h1>"
content += "<p>table data</p>"
for row in table:
# Access specific values in a row
value_in_column1 = row[0]
value_in_column2 = row[1]
value_in_column3 = row[2]
content += "<p>"+str(value_in_column1)+","+str(value_in_column2)+","+str(value_in_column3)+"</p>"
pdf = renderer.RenderHtmlAsPdf(content)
# Export to a file or Stream
pdf.SaveAs("DemoPyarrow.pdf")
py
PYTHON
Code Erläuterung
Das Skript demonstriert die Integration von Pandas-, PyArrow- und IronPDF-Bibliotheken, um ein PDF-Dokument aus Daten zu erstellen, die in einem Pandas DataFrame gespeichert sind:
Pandas DataFrame-Erstellung:
Erstellen Sie ein Pandas DataFrame (df) mit drei Spalten (col1, col2, col3), die numerische und Zeichenfolgendaten enthalten.
Konvertierung in PyArrow-Tabelle:
Konvertiert das Pandas DataFrame ("df") in eine PyArrow-Tabelle ("table") mittels der Methode pa.Table.from_pandas(). Diese Konvertierung ermöglicht eine effiziente Datenverarbeitung und Interoperabilität mit Arrow-basierten Anwendungen.
PDF-Erstellung mit IronPDF:
Verwendet die ChromePdfRenderer von IronPDF und ruft die RenderHtmlAsPdf-Methode auf, um ein PDF-Dokument (DemoPyarrow.pdf) aus einem HTML-String (Inhalt) zu generieren, das Kopfzeilen und Daten enthält, die aus der PyArrow-Tabelle (Tabelle) extrahiert wurden.
Setzen Sie den Lizenzschlüssel an den Anfang des Skripts, bevor Sie das IronPDF-Paket verwenden:
from ironpdf import *
# Apply your license key
License.LicenseKey = "key"
py
PYTHON
Schlussfolgerung
PyArrow ist eine vielseitige und leistungsstarke Bibliothek, die die Fähigkeiten von Python für Datenverarbeitungsaufgaben erweitert. Sein effizientes Speicherformat, die Interoperabilitätsfunktionen und die Integration mit Pandas machen es zu einem unverzichtbaren Werkzeug für Datenwissenschaftler und Ingenieure. Ob Sie mit großen Datensätzen arbeiten, komplexe Datenmanipulationen durchführen oder Datenverarbeitungspipelines aufbauen, PyArrow bietet die Leistung und Flexibilität, die erforderlich sind, um diese Aufgaben effektiv zu bewältigen. Auf der anderen Seite ist IronPDF eine robuste Python-Bibliothek, die die Erstellung, Manipulation und Darstellung von PDF-Dokumenten direkt aus Python-Anwendungen vereinfacht. Es lässt sich nahtlos in bestehende Python-Frameworks integrieren und ermöglicht es Entwicklern, PDFs dynamisch zu erzeugen und anzupassen. Zusammen mit den Python-Paketen PyArrow und IronPDF können Benutzer Datenstrukturen mühelos verarbeiten und die Daten archivieren.
IronPDF bietet außerdem umfassende Dokumentation, um Entwicklern beim Einstieg zu helfen, begleitet von zahlreichen Codebeispielen, die seine leistungsstarken Fähigkeiten demonstrieren. Für weitere Informationen besuchen Sie bitte die Seiten Dokumentation und Codebeispiele.
Chaknith arbeitet an IronXL und IronBarcode. Er hat tiefgehende Expertise in C# und .NET und hilft, die Software zu verbessern und Kunden zu unterstützen. Seine Erkenntnisse aus Benutzerinteraktionen tragen zu besseren Produkten, Dokumentation und einem insgesamt besseren Erlebnis bei.
< PREVIOUS crc32c Python (Wie es für Entwickler funktioniert)
NÄCHSTES > kryptographie Python (Wie es für Entwickler funktioniert)