python docx文档转html页面

说到word文档转html的,想必网上一搜一大把,各种在线word转html页面,使用起来也方便。但是在实际项目中要使用的话,需要自己开发,这里就提供一个简单的方法。   
后缀 .doc 和 .docx  都是word文档,doc是word2003以及之前版本保存的文档,docx是word2007、word2010等保存的新型文档,本质都是属于文字排版的文件。**注意** 这里提供的方法暂时是针对docx的。

这里使用`pydocx`的库,安装`pip3 install pydocx`,可以直接对docx文件进行处理,简单粗暴,`PyDocX.to_html("**.docx")`,返回值就是转换后的html的源码,然后再通过写文件,写到html文件里面。
>注‘Android技术交流群878873098,欢迎大家加入交流,畅谈!本群有免费学习资料视频’并且免费分享源码解析视频
```
from pydocx import PyDocXhtml = 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>
```

这里对文件的处理都是当前文件夹下面的,得到的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 的文件。
![image.png](https://upload-images.jianshu.io/upload_images/13855150-b0e9ef3bb07756a4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

使用地址: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()
~~~
>注‘Android技术交流群878873098,欢迎大家加入交流,畅谈!本群有免费学习资料视频’并且免费分享源码解析视频

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值