文章链接:https://mp.weixin.qq.com/s/uMb2ziRS1NJ1GXIjofeANg

说到word文档转html的,网上一搜一大把,各种在线word转html页面,使用起来也方便。但是在实际项目中要使用的话,需要自己开发,这里就提供一个简单的方法。

后缀 .doc 和 .docx 都是word文档,doc是word2003以及之前版本保存的文档,docx是word2007、word2010等保存的新型文档,本质都是属于文字排版的文件。注意 这里提供的方法暂时是针对docx的。

这里使用pydocx的库,安装pip3 install pydocx,可以直接对docx文件进行处理,简单粗暴,PyDocX.to_html("**.docx"),返回值就是转换后的html的源码,然后再通过写文件,写到html文件里面。

from pydocx import PyDocX
html = PyDocX.to_html("test.docx")
f = open("test.html", 'w', encoding="utf-8")
f.write(html)
f.close()

这里对文件的处理都是当前文件夹下面的,得到的html文件可以直接打开查看,通过对html查看,可以发现文字转换成了P标签,图片使用base64 的方式显示的。

这里是对本地的文件进行处理,进一步部署到服务器上,我使用的是Django的项目,前端页面通过form 表单进行上传docx 文件。

<form method="post" enctype="multipart/form-data">
<input type="file" name="file" accept="application/vnd.openxmlformats-officedocument.wordprocessingml.document">
</form>

<input> type属性定为file,accept="application/vnd.openxmlformats-officedocument.wordprocessingml.document" 筛选docx 的文件。

使用地址:https://www.manjiexiang.cn/blog/wordtohtml

这里上传的文件是docx格式的word文档,针对doc 的文档,可以手动改成docx后缀名,进行上传使用。 尝试用代码转换成docx,window平台下有相应的库,ubantu 暂时无果,欢迎码友提供解决方法。

介绍下window平台下的代码转换方法,pip3 install pypiwin32安装这个库,里面有win32com,将doc文档转成docx 的。

from win32com import client
word = client.Dispatch("Word.Application")
doc = word.Documents.Open("D:\\***\\**.doc") //绝对路径 doc文件
doc.SaveAs("D:\\***\\**.docx",16) //保存的docx 文件,绝对路径
doc.Close()
word.Quit()

欢迎关注我的个人博客:https://www.manjiexiang.cn/

更多精彩欢迎关注微信号:春风十里不如认识你

一起学习,一起进步,欢迎上车,有问题随时联系,一起解决!!!

python docx文档转html页面的更多相关文章

  1. pywin32 pywin32 docx文档转html页面 word doc docx 提取文字 图片 html 结构

    https://blog.csdn.net/X21214054/article/details/78873338# python docx文档转html页面 - 程序猿tx - 博客园 https:/ ...

  2. python 解析docx文档的方法,以及利用Python从docx文档提取插入的文本对象和图片

    首先安装docx模块,通过pip install docx或者在docx官方链接上下载安装都可以 下面来看下如何解析docx文档:文档格式如下 有3个部分组成 1 正文:text文档 2 一个表格. ...

  3. python操作docx文档(转)

    python操作docx文档 关于python操作docx格式文档,我用到了两个python包,一个便是python-docx包,另一个便是python-docx-template;,同时我也用到了很 ...

  4. C# web项目利用docx文档作为模板~为打印专做的解决方案

    还是那句话:十年河东,十年河西,莫欺少年穷. 目前,web端打印技术有很多,有收费的专业web打印控件,大家可以参考我的上一篇博客.当然,很多公司不愿意出钱,那么今天咱们就探讨下怎么做免费的打印. w ...

  5. IIS下不能下载文件的docx文档,XLSX文档的设置方法(转)

    IIS下不能下载文件的docx文档,XLSX文档的设置方法 Office 2007的的界面风格默认格式中都是.DOCX,XLSX,PPTX等等后缀,连结中包含此类文件时,界面风格默认什么打不开的其实只 ...

  6. [python-docx]docx文档操作的库

    from docx import Document from docx.shared import Inches # 新建document对象 document = Document() # 添加段落 ...

  7. 如何在命令行模式下查看Python帮助文档---dir、help、__doc__

    如何在命令行模式下查看Python帮助文档---dir.help.__doc__ 1.dir函数式可以查看对象的属性,使用方法很简单,举str类型为例,在Python命令窗口输入 dir(str) 即 ...

  8. js仿百度文库文档上传页面的分类选择器_第二版

    仿百度文库文档上传页面的多级联动分类选择器第二版,支持在一个页面同一时候使用多个分类选择器. 此版本号把HTML,CSS,以及图片都封装到"category.js"中.解决因文件路 ...

  9. CEBX格式的文档如何转换为PDF格式文档、DOCX文档?

    方正阿帕比CEBX格式的文档如何转换为PDF格式文档.DOCX文档? 简介: PDF.Doc.Docx格式的文档使用的非常普遍,金山WPS可以直接打开PDF和Doc.Docx文档,使用也很方便. CE ...

随机推荐

  1. 再好好聊聊 HTTP 里的 Cookie | 实用 HTTP

    题图:by Juan Pablo Arenas 一.序 Hi,大家好,我是承香墨影! HTTP 协议在网络知识中占据了重要的地位,HTTP 协议最基础的就是请求和响应的报文,而报文又是由报文头(Hea ...

  2. kubernetes实践之四:深入理解控制器(workload)

    一.Pod与controllers的关系 controllers:在集群上管理和运行容器的对象 通过label-selector相关联 Pod通过控制器实现应用的运维,如伸缩,升级等 二.Deploy ...

  3. C# 替换Word文本—— 用文档、图片、表格替换文本

    编辑文档时,对一些需要修改的字符或段落可以通过查找替换的方式,快速地更改.在C# 在word中查找及替换文本一文中,主要介绍了在Word中以文本替换文本的方法,在本篇文章中,将介绍如何用一篇Word文 ...

  4. HTML/CSS初步了解

    一.CSS是什么? 它是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS为HTML标记语言提供了一种样式描述,定义了其中元素的显示 ...

  5. PLM与企业信息化

    http://blog.itpub.net/31532639/viewspace-2199409/ PLM的发展历史及其与PDM的关系      在ERP.SCM.CRM以及PLM这4个系统中,PLM ...

  6. linux操作系统的前世今生

    linux操作系统是李纳斯-拖瓦兹于1970年正式发布第一个真正的内核版本,他也称Linux之父,Linux是由Unix发展而来,发展到现在Linux操作系统凭借着良好的性能和稳定性已被linux已被 ...

  7. 关于'selffilter' is not a registered tag library. Must be one of:

    报错代码: 'selffilter' is not a registered tag library. Must be one of: admin_list admin_modify admin_st ...

  8. 聊聊2018.2的Scriptable Build Pipeline以及构建Assetbundle

    0x00 前言 在这篇文章中,我们选择了过去几周Unity官方社区交流群以及UUG社区群中比较有代表性的几个问题,总结在这里和大家进行分享.主要涵盖了Scriptable Build Pipeline ...

  9. JavaScript Date 对象 实现 时间戳=>日期对象 ,时间戳=>字符串,字符串=>时间戳,获取一年内所有的星期

    由于业务需求要写一个日历,日历好写,但是,要标出周六和周日为红色,用到的部分核心函数如下: <script> /* *时间戳=>日期对象 * return Number * */ f ...

  10. 从一道面试题探究 Integer 的实现

    记得有次面试,面试官问我: 如何写一个方法交换两个 Integer 类型的值? 当时心里一惊,这是把我当小白了呀!交换两个数的值还不容易么,最简单的直接搞一个中间变量,然后就可以交换了… … 面试官随 ...