In diesem Artikel erfahren Sie, wie Sie die Konvertierung von CSV in das PDF-Dateiformat durchführen. Diese einfache Aufgabe kann leicht in zwei Schritten erledigt werden:

  1. Erstens konvertieren wir unsere CSV-Datei mit den Pandas in HTML
  2. Im zweiten Schritt verwenden wir die PDFkit-Python-API, um unsere HTML-Datei in das PDF-Dateiformat zu konvertieren.

Sich nähern:

1. Konvertieren einer CSV-Datei in HTML mit Pandas Framework.

Pandas ist ein schnelles, leistungsstarkes, flexibles und benutzerfreundliches Open-Source-Tool zur Datenanalyse und -manipulation, das auf der Programmiersprache Python aufbaut.

Verwendete CSV-Datei:

Für diesen Abschnitt des Tutorials verwenden wir:

  1. pandas.read_csv(): read_csv ist eine wichtige Pandas-Funktion, um CSV-Dateien zu lesen und Operationen darauf auszuführen. Wir werden sie verwenden, um unsere Eingabe-CSV-Datei zu lesen.
  2. .to_html(): Mit Hilfe der Methode DataFrame.to_html() können wir das HTML-Format eines Datenrahmens abrufen, indem wir die Methode DataFrame.to_html() verwenden. Diese Funktion nimmt eine CSV-Datei als Eingabe auf, konvertiert sie und speichert sie lokal im HTML-Dateiformat.

Syntax zum Konvertieren von CSV in HTML mit Pandas:

pandas als pd importieren 

CSV = pd.read_csv(“MeineCSV.csv”)  

CSV.to_html(“MeineCSV.html”)  

Verwendete HTML-Datei: MyCSV

2. Konvertieren der HTML-Datei in CSV mit der PDFKit-Python-API

Es gibt viele Ansätze zum Generieren von PDF in Python. pdfkit ist einer der besseren Ansätze, da es HTML in PDF mit verschiedenen Bildformaten, HTML-Formularen und anderen komplexen druckbaren Dokumenten umwandelt.

Wir können ein PDF-Dokument mit pdfkit auf 3 Arten erstellen. Sie sind :

  • von URL
  • aus einer HTML-Datei
  • aus der Schnur.

2.1. PDF aus URL generieren: Das folgende Skript gibt uns die PDF-Datei von einer Website-URL.

import pdfkit
pdfkit.from_url('http://www.geeksforgeeks.org', 'Output.pdf')

2.2. PDF aus Datei generieren: Das folgende Skript liefert uns die PDF-Datei aus einer HTML-Datei.

import pdfkit
pdfkit.from_file('LocalHTMLFile.html', 'Output.pdf')

2.3. PDF aus dem String generieren: Das folgende Skript liefert uns die PDF-Datei aus einem String.

import pdfkit
pdfkit.from_string('Geeks For Geeks', 'Output.pdf')

Da wir unsere CSV-Datei bereits in HTML konvertiert haben, verwenden wir die erste Methode, dh PDF aus URL generieren, wobei wir entweder die Adresse einer beliebigen Website oder eine lokale HTML-Datei angeben können.

Wenn wkhtmltopdf bereits auf dem Computer installiert ist, können wir diese Syntax direkt verwenden: 

Syntax zum Konvertieren von HTML in PDF mit PDFKit :

pdfkit importieren 

pdfkit.from_url("MeineCSV.html", "FinalOutput.pdf")



Andernfalls müssen wir auch wkhtmltopdf installieren, damit das Skript auf unserem PC ausgeführt werden kann, und den Pfad der installierten Datei wkhtmltopdf.exe auf die Umgebungsvariablen unseres PCs setzen, und wir können jetzt den Konfigurationsabschnitt im Skript überspringen.

oder 

Wir können alternativ die Konfiguration wie für die installierte Datei wkhtmltopdf.exe gezeigt einstellen und die Konfigurationsvariable an die Funktion pdfkit.from_url übergeben:

 Pfadkonfiguration

path_wkhtmltopdf = r'D:\Softwares\wkhtmltopdf\bin\wkhtmltopdf.exe'

config = pdfkit.configuration(wkhtmltopdf=path_wkhtmltopdf)

Konvertieren Sie HTML-Dateien mit pdfkit in PDF

pdfkit.from_url("MyCSV.html", "FinalOutput.pdf", configuration=config)

Implementierung:

Anfangsdateien im Ordner

URSPRÜNGLICHE DATEIEN IM ORDNER

Python

import pandas as pd
import pdfkit
  
# SAVE CSV TO HTML USING PANDAS
csv = 'MyCSV.csv'
html_file = csv_file[:-3]+'html'
  
df = pd.read_csv(csv_file, sep=',')
df.to_html(html_file)
  
# INSTALL wkhtmltopdf AND SET PATH IN CONFIGURATION
# These two Steps could be eliminated By Installing wkhtmltopdf -
# - and setting it's path to Environment Variables
path_wkhtmltopdf = r'D:\Softwares\wkhtmltopdf\bin\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkhtmltopdf)
  
# CONVERT HTML FILE TO PDF WITH PDFKIT
pdfkit.from_url("MyCSV.html", "FinalOutput.pdf", configuration=config)

Nach dem Ausführen des obigen Python-Skripts:

DATEIEN IMSELBEN VERZEICHNIS NACH DEM AUSFÜHREN VON PYTHON SCRIPT

Endgültige Ausgabe: