首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python - Excel转HTML (保留格式)

Python - Excel转HTML (保留格式)
EN

Stack Overflow用户
提问于 2021-07-07 00:10:40
回答 1查看 171关注 0票数 0

我正在尝试将Excel文件转换为HTML文件,同时保持工作簿的格式。

使用Excel,我可以从xlsx切换到htm: File ->另存为->网页(*.html,*.htm)

使用Python时,我总是得到一些乱七八糟的东西,如下图中的workbook.htm或workbook.html。

代码语言:javascript
复制
import xlwings as xw
file_path = "*.xlsx"
excel_app = xw.App(visible=False)
wb = excel_app.books.open(file_path)
wb.save("*.html")
wb.save("*.htm")
代码语言:javascript
复制
from xlsx2html import xlsx2html
xlsx2html('*xlsx', '*.htm')
xlsx2html('*xlsx', '*.html')

我使用了虚拟文件,我只是尝试使用Python从xlsx文件转到htm/hmtl文件,并保持格式,例如背景颜色,边框等。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-27 12:30:57

我曾经有过这样的问题。我还使用了xlwings库,对其进行了定制,并取得了成功。您可以在文件xlwing/_xlwindows.py中找到并进行编辑,如下所示:

代码语言:javascript
复制
def save(self, path=None):
    saved_path = self.xl.Path
    source_ext = os.path.splitext(self.name)[1] if saved_path else None
    target_ext = os.path.splitext(path)[1] if path else '.xlsx'
    if saved_path and source_ext == target_ext:
        file_format = self.xl.FileFormat
    else:
        ext_to_file_format = {'.xlsx': FileFormat.xlOpenXMLWorkbook,
                              '.xlsm': FileFormat.xlOpenXMLWorkbookMacroEnabled,
                              '.xlsb': FileFormat.xlExcel12,
                              '.xltm': FileFormat.xlOpenXMLTemplateMacroEnabled,
                              '.xltx': FileFormat.xlOpenXMLTemplateMacroEnabled,
                              '.xlam': FileFormat.xlOpenXMLAddIn,
                              '.xls': FileFormat.xlWorkbookNormal,
                              '.xlt': FileFormat.xlTemplate,
                              '.xla': FileFormat.xlAddIn,
                              '.html': FileFormat.xlHtml # ---> add new
                              }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68273994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档