美文网首页
Excel网页预览解决方案(python)

Excel网页预览解决方案(python)

作者: 苏南丶 | 来源:发表于2020-11-04 15:31 被阅读0次

    三种解决方案
    当遇到excel预览的需求时,通常会有三种解决方案:

    • 1.将excel转化为pdf。----这种方式当遇到excel比较大时,会将excel分段截取展示,很影响阅读。
    • 2.后台读取excel内容,返回给前端做渲染。----这种方式只能定义固定模板,并且工作量巨大。
    • 3.将excel转化为html。----这种方式一般采用第三方工具,效果也很不错,本文主要讲解这种方式在python中的实现过程。

    解决思路
    本文主要是借助了wps的转化功能,通过python来调取wps,从而实现这一转换。

    基本环境

    1. windows系统(本文仅使用与windows系统)
    2. 安装wps office
    3. 安装win32com: pip install pypiwin32
    

    核心代码

    # 初始化 (不做该操作在多线程时会报错)
    pythoncom.CoInitialize()
    
    # 调用wps的com接口
    w = win32com.client.gencache.EnsureDispatch('Ket.Application')
    # 后台运行,不显示,不警告
    w.Visible = 0
    w.DisplayAlerts = 0
    
    # 选定file文件
    workbook = w.Workbooks.Open(file)
    # 另存file文件,44即html格式
    workbook.SaveAs(file.split('.')[0], FileFormat=44)
    w.Quit()
    
    # 释放资源
    pythoncom.CoUninitialize()
    

    com接口相关
    这个涉及到vb编程,FileFormat对应的参数值可查阅vba_help中的VBAXL10.CHM,在这里不做深入探讨。

    相关文章

      网友评论

          本文标题:Excel网页预览解决方案(python)

          本文链接:https://www.haomeiwen.com/subject/vvhemktx.html