我的主要思路是:
Excel -> Html -> Image
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# -*- coding:utf-8 -*- __author__ = 'YangXin' import sys import pandas as pd import codecs import imgkit reload (sys) sys.setdefaultencoding( 'utf-8' ) # ReportImage -> report convert include multiple sheets into pictures class ReportImage: def __init__( self ): pass # excel_html -> convert excel include multiple sheets into multiple html file # excel_file -> file # html_path -> path @staticmethod def excel_html(excel_file, html_path): html_list = [] excel_obj = pd.ExcelFile(excel_file) sheet_list = excel_obj.sheet_names index = 0 for i in sheet_list: html_file = html_path + i + ".html" excel_data = excel_obj.parse(excel_obj.sheet_names[index]) with codecs. open (html_file, 'w' , 'utf-8' ) as html: html.write(excel_data.to_html(header = True , index = True )) html_list.append(html_file) index + = 1 return html_list # html_image -> convert htmls into pictures file # html_list -> list # image_path -> path @staticmethod def html_image(html_list, image_path): index = 0 for i in html_list: img_obj = image_path + str (index) + ".png" with open (i, 'r' ) as html_file: imgkit.from_file(html_file, img_obj, options = { "encoding" : "UTF-8" }) index + = 1 if __name__ = = '__main__' : html_list = ReportImage.excel_html( "/xxx.xlsx" , "/yyy/" ) ReportImage.html_image(html_list, "/zzz/" ) |
以上这篇Python实现将Excel转换成为image的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u012965373/article/details/81273430