这篇文章给大家分享的是有关Python如何将excel内容批量转化为pdf的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
项目名称:
将excel内容批量转化为pdf
知识点:
python 操作 excel
python 操作 pdf
html
开发环境:
解释器: Python 3.6.5 | Anaconda, Inc.
编辑器: pycharm 社区版
导入工具
import openpyxl import pdfkit
加载一个本地文件
workbook = openpyxl.load_workbook('2020经销商目标.xlsx') def func(money): # print(money) str_number = f'{money}' str_list = list(str_number[::-1]) str_ = "" i = 1 for no, char in enumerate(str_list): str_ += char # print(no, char) if i % 3 == 0 and len(str_list) != i: str_ += ',' i += 1 # print(str_[::-1]) return str_[::-1] sheet1 = workbook['Sheet1'] print(sheet1) for row in list(sheet1.rows)[3:]: for col in row[1:]: print(col.value, end='\t') code = row[1].value name = row[2].value number = row[3].value money = row[4].value total = row[5].value print(code, name, number, money) str_number = func(number) str_money = func(money) str_total = func(total) html = html.replace('code', code) html = html.replace('name', name) html = html.replace('number', f'{str_number}.00') html = html.replace('money', f'{str_money:}.00') html = html.replace('total', f'{str_total}.00') # print(html) with open('example.html', mode='w', encoding='utf-8') as f: f.write(html)
配置pdf的转化软件
config = pdfkit.configuration(wkhtmltopdf='C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe')
from_file 文件的名字 保存文件的名字 转化软件的配置
pdfkit.from_file('example.html', f'{name}.pdf', configuration=config)
转化为PDF
html = """ <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> table { font-size: 22px; width: 850px; } .blod { font-weight: bolder; } </style> </head> <body> <table border="1" align="center"> <tr> <td align="center" colspan="6">2020年广东经销商预算目标</td> </tr> <tr> <td>经销商代码</td> <td>经销商名称</td> <td>成车数量</td> <td>成车金额</td> <td>商品金额</td> <td>客户签字</td> </tr> <tr class="blod"> <td>code</td> <td>name</td> <td>number</td> <td>money</td> <td>total</td> <td></td> </tr> </table> </body> </html>
最后运行代码,效果如下图
感谢各位的阅读!关于“Python如何将excel内容批量转化为pdf”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。