在本文中,我们将学习如何将 CSV 转换为 PDF 文件格式。这个简单的任务可以通过两个步骤轻松完成:
- 首先,我们使用 Pandas 将 CSV 文件转换为 HTML
- 在第二步中,我们使用 PDFkit Python API 将 HTML 文件转换为 PDF 文件格式。
方法:
Pandas 是一种快速、强大、灵活的 easy-to-use 开源数据分析和操作工具,构建在 Python 编程语言之上。
使用的 CSV 文件:
对于本教程的这一部分,我们将使用:
- pandas.read_csv(): read_csv 是一个重要的 pandas 函数,用于读取 CSV 文件并对其进行操作。我们将使用它来读取输入的 CSV 文件。
- .to_html(): 借助 DataFrame.to_html() 方法,我们可以使用 DataFrame.to_html() 方法获取 dataframe 的 html 格式。该函数接收 CSV 文件作为输入,进行转换,然后以 HTML 形式保存在本地文件格式。
Syntax for converting CSV to HTML using Pandas :
import pandas as pd
CSV = pd.read_csv(“MyCSV.csv”)
CSV.to_html(“MyCSV.html”)
使用的 HTML 文件: MyCSV
2. Html转PDF
在 python 中生成 PDF 的方法有很多种。 pdfkit 是更好的方法之一,因为它将 HTML 呈现为具有各种图像格式、HTML 表单和其他复杂可打印文档的 PDF。
我们可以通过 3 种方式使用 pdfkit 创建 PDF 文档。他们是:
- 来自网址
- 来自 HTML 文件
- 从字符串中。
2.1.从 URL 生成 PDF:以下脚本为我们提供了来自网站 URL 的 pdf 文件。
import pdfkit pdfkit.from_url('https://www.geeksforgeeks.org', 'Output.pdf')
2.2.从文件生成 PDF:以下脚本为我们提供了来自 HTML 文件的 pdf 文件。
import pdfkit pdfkit.from_file('LocalHTMLFile.html', 'Output.pdf')
2.3.从字符串生成 PDF:以下脚本为我们提供了来自字符串的 pdf 文件。
import pdfkit pdfkit.from_string('Geeks For Geeks', 'Output.pdf')
由于我们已经将 CSV 文件转换为 HTML,我们将使用第一种方法,即从 URL 生成 PDF,其中我们可以提供任何网站的地址或任何本地 HTML 文件。
如果机器上已经安装了 wkhtmltopdf,我们可以直接使用以下语法:
Syntax for converting HTML to PDF using PDFKit :
import pdfkit
pdfkit.from_url(“MyCSV.html”, “FinalOutput.pdf”)
另外,我们还需要安装 wkhtmltopdf 以便脚本在我们的 PC 上运行,并将安装文件 wkhtmltopdf.exe 的路径设置为我们 PC 的 Environment Variables ,现在我们可以跳过脚本中的配置部分。
或者
我们也可以为已安装的 wkhtmltopdf.exe 文件设置配置,并将配置变量传递给 pdfkit.from_url 函数:
路径配置
path_wkhtmltopdf = r'D:\Softwares\wkhtmltopdf\bin\wkhtmltopdf.exe'
配置 = pdfkit.configuration(wkhtmltopdf=path_wkhtmltopdf)
使用 pdfkit 将 HTML 文件转换为 PDF
pdfkit.from_url(“MyCSV.html”、“FinalOutput.pdf”、配置=配置)
执行:
文件夹中的初始文件
文件夹中的初始文件
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)
运行以上 Python 脚本后:
运行 Python 脚本后同一目录中的文件
最终输出:
相关用法
- Python CSV转JSON用法及代码示例
- Python CSV转HTML Table用法及代码示例
- Python Calendar itermonthdates()用法及代码示例
- Python Calendar itermonthdays()用法及代码示例
- Python Calendar itermonthdays2()用法及代码示例
- Python Calendar itermonthdays3()用法及代码示例
- Python Calendar itermonthdays4()用法及代码示例
- Python Calendar iterweekdays()用法及代码示例
- Python Calendar monthdatescalendar()用法及代码示例
- Python Calendar monthdays2calendar()用法及代码示例
- Python Calendar monthdayscalendar()用法及代码示例
- Python Calendar yeardatescalendar()用法及代码示例
- Python Calendar yeardays2calendar()用法及代码示例
- Python Calendar yeardayscalendar()用法及代码示例
- Python Condition acquire()用法及代码示例
- Python Condition notify()用法及代码示例
- Python Condition notify_all()用法及代码示例
- Python Condition release()用法及代码示例
- Python Condition wait()用法及代码示例
- Python Collections.UserList用法及代码示例
- Python Collections.UserDict用法及代码示例
- Python Collections.UserString用法及代码示例
- Python Celsius转Fahrenheit用法及代码示例
- Python Complex Number转String用法及代码示例
- Python Coordinate Dictionary转Matrix用法及代码示例
注:本文由纯净天空筛选整理自devashish_大神的英文原创作品 How to convert CSV File to PDF File using Python?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。