在Windows和MacOS环境下实现批量doc转docx,xls转xlsx

这篇具有很好参考价值的文章主要介绍了在Windows和MacOS环境下实现批量doc转docx,xls转xlsx。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、引言

Python中批量进行办公文档转化是常见的操作,在windows状态下我们可以利用changeOffice这个模块很快进行批量操作。

二、在Windows环境下的解决文案

Windows环境下,如何把doc转化为docx,xls转化为xlsx?

首先,我们要安装这个第三方模块,在cmd下输入

pip install changeOffice

其次,导入这个模块

from changeOffice import change

然后,要确定文件所在的位置

c = change(".") #如果是"."则表示当前位置

最后就可以进行展示转化了,这里为了简便我们把代码写在一起形成py文件

from changeOffice import change
path = "." #这里输入文件所在的咱径
c = change(path)
c. doc2docx() #把所有的doc文件转化为docx文件
c. xls2xlsx() #把所有的doc文件转化为docx文件
c. ppt2pptx() #把所有的doc文件转化为docx文件

今天网友提问,说自己的电脑不是windows的,如何把xls转化为xlsx, 把doc转化为docx呢,经过一番探索,发现在苹果电脑上用changeOffice的老方法是解决不了这个新问题的。

我们当然也可以用软件,或者在线网站进行转化,但这样都无法实现批量转化docx和xls的功能。

三、MacOS下的解决方案

经过一番搜索,我们在网上找到了样例的代码,然后我们利用os.walk()的方法对目录下的所有文件进行遍历。最后我们把文件逐一进行转化。文章来源地址https://www.toymoban.com/news/detail-648487.html

1. MacOS下把doc批量转化为docx文件

import os
import subprocess

for root, folders, files in os.walk("."):
    for file in files:
        if file.endswith(".doc"):
            file_path = os.path.abspath(os.path.join(root, file))
            path = os.path.dirname(file_path)
            subprocess.run(["/Applications/LibreOffice.app/Contents/MacOS/soffice", "--headless", "--convert-to", "docx", file_path, "--outdir", path])
            os.remove(file_path)
print('Success!')

2. MacOS下把xls批量转化为xlsx文件

import os
import subprocess

for root, folders, files in os.walk("."):
    for file in files:
        if file.endswith(".xls"):
            file_path = os.path.abspath(os.path.join(root, file))
            path = os.path.dirname(file_path)
            subprocess.run(["/Applications/LibreOffice.app/Contents/MacOS/soffice", "--headless", "--convert-to", "xlsx", file_path, "--outdir", path])
            os.remove(file_path)
print('Success!')

四、学后反思

  1. 源码中我增加了一个os.remove(file_path),就是转化完会把原来的源文件进行删除,只保留转化后的文件。
  2. 进行批量转化前一定要进行备份,因为这个过程是不可逆转的。

到了这里,关于在Windows和MacOS环境下实现批量doc转docx,xls转xlsx的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Java给文件加水印,支持.pptx,.doc,.docx,.xls,.xlsx,.pdf,.png,.jpg。

    office 相关格式文档的加密主要使用微软提供的Spire.Office for Java ,free部分有针对性每个类型的API说明和示例,请自行参考以下链接。下面也会附上我在项目中的实际工具类。 Spire.Office for Java | 专业的 Java Office 套件 | 创建、修改、转换、打印 Word/PowerPoint/PDF 文档 我的策略是

    2024年02月12日
    浏览(13)
  • uniapp 在线预览各种格式文件(支持doc, xls, ppt, pdf, docx, xlsx, pptx格式) 适用于小程序 (解决了真机调试可以打开,发布体验版打不开的问题)(可设置文件名)

    代码: 参考官方文档: uni.saveFile(OBJECT) @savefile | uni-app官网 uni-app,uniCloud,serverless https://uniapp.dcloud.net.cn/api/file/file.html#opendocument tips: 问题一: 打不开         1. 文件地址须保证能正常打开(在浏览器中尝试是否能预览或正常下载)         2.注意文件名最好为数字字母(非中文) 问题

    2024年02月05日
    浏览(16)
  • Python实现将pdf,docx,xls,doc,wps链接下载并将文件保存到本地

    Python实现将pdf,docx,xls,doc,wps链接下载并将文件保存到本地

    前言 本文是该专栏的第31篇,后面会持续分享python的各种干货知识,值得关注。 在工作上,尤其是在处理爬虫项目中,会遇到这样的需求。访问某个网页或者在采集某个页面的时候,正文部分含有docx,或pdf,或xls,或doc,或wps,或ofd,或xlsx,或zip等链接。需要你使用python自

    2024年02月16日
    浏览(37)
  • node简单处理xls、xlsx、docx文件

    最近想爬取一些excel和word文件中的数据,于是记录下来,方便自己后面复杂粘贴,xls、xlsx、docx文件还是能处理的,但是doc文件处理不了 使用cmd 在入口文件

    2024年02月15日
    浏览(9)
  • python 读写 json,csv,txt,docx,xlsx,xls文件大全

    python 读写 json,csv,txt,docx,xlsx,xls文件大全

    最近再处理数据的时候,总会用到读写json,csv,xlsx和xls文件代码 这里就做个总结记录一下 扩展: json.loads(line)和 json.load(line) 通用写法: 1.2.1 list类型写入 1.2.2 dict类型写入 注意:json.dump()将Python对象序列化为JSON格式,并将其写入文件中。 扩展:json.dumps()和 json.dump() 2.2.1

    2024年02月06日
    浏览(12)
  • .docx,.doc,.pptx,.ppt,.xlsx,.pdf后缀文档图标不显示

    .docx,.doc,.pptx,.ppt,.xlsx五种操作类似。 1、Win+R,输入regedit,回车; 2、对于 Word 2007/Word 2010,备份并删除以下三个键值:(可以右击选择“导出”,把键值备份至桌面。一旦发生问题,可以通过备份来恢复注册表键值) HKEY_CLASSES_ROOT/.docx HKEY_CLASSES_ROOT/Word.Document.12 HKEY_CU

    2024年02月07日
    浏览(10)
  • Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档

    Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档, 还支持 xlsx 和 docx 文件的加密(具体使用看文档)。暂时不支持doc文件的解密 传送门:officecrypto-tool 读取加密的 Excel 示例 读取加密的 Word 示例 使用:mammoth officecrypto-tool 使用其他的word读取库也是一样的道理

    2024年02月10日
    浏览(14)
  • vue 预览 有token验证的 doc、docx、pdf、xlsx、csv、图片 并下载

    预览 doc我也不会 下载

    2024年02月09日
    浏览(9)
  • 基于Js和Java实现xlsx\xls文档的导入和下载

    基于Js和Java实现xlsx\xls文档的导入和下载

    ​实现xlsxxls文档的导入、导出 ​导入效果: ​导出效果: 导出效果图 1.2.1、实体类 1.2.2、导入实体类 1.2.3、控制层 1.2.4、服务层 1.2.5、服务实现层 1、表格样式: 基本情况 单位:测试单位 2024年 第一列数据 第二列数据 第三列数据 第四列数据 第五列数据 实现代码 2、表格

    2024年03月20日
    浏览(16)
  • 纯前端实现文件预览(pdf、docx 、xlsx)详细过程

    我详细这个当这个需求来的时候,有很大一部分人跟我的想法是一样的纯前端如何去实现多文件预览。确实这个功能很让人头疼,虽然市面上也有很多成型的插件,但是极少数能满足不同文件的预览,要么就是用第三方的链接去预览。这种虽然是最简单的方式。但是好多公司

    2024年02月14日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包