wordpress快站怎么样,这么做3d网站,泰州建设局网站,在服务器网站上做跳转页面一、引言
Python中批量进行办公文档转化是常见的操作#xff0c;在windows状态下我们可以利用changeOffice这个模块很快进行批量操作。
二、在Windows环境下的解决文案
Windows环境下#xff0c;如何把doc转化为docx#xff0c;xls转化为xlsx#xff1f;
首先#xff…一、引言
Python中批量进行办公文档转化是常见的操作在windows状态下我们可以利用changeOffice这个模块很快进行批量操作。
二、在Windows环境下的解决文案
Windows环境下如何把doc转化为docxxls转化为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()的方法对目录下的所有文件进行遍历。最后我们把文件逐一进行转化。
1. MacOS下把doc批量转化为docx文件
import os
import subprocessfor 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 subprocessfor 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!)
四、学后反思
源码中我增加了一个os.remove(file_path)就是转化完会把原来的源文件进行删除只保留转化后的文件。进行批量转化前一定要进行备份因为这个过程是不可逆转的。