先前试用过很多包,都不管用,读取文件时候会出现如下错误:
pywintypes.com_error: (-2147352567, '发生意外。', (0, 'Kingsoft WPS', '文档保存失败。', '', 3011, -2147467259), None)
最后改成docx包,其安装的module为:
pip install python-docx
其中一定要docx文件,如果是doc文件进行改后缀成docx是会有问题的,导致读取的文件一直是空的,需要原生态就是使用docx创建的文件。
import re,os
from docx import Document
def remove_chinese_line(doc):
for paragraph in doc.paragraphs:
temp=paragraph.text
#判断是否是中文
cls_idx=re.sub('[\u4e00-\u9fa5]', '', temp)
print(cls_idx)
#进行删除对应的段落
if cls_idx!=temp:
p=paragraph._element
p.getparent().remove(p)
p._p=p._element=None
return doc
if __name__ == '__main__':
root="temp/input"
input_files= os.listdir(root)
for item in input_files:
cur_file=os.path.join(root,item)
document = Document(cur_file)
doc=remove_chinese_line(document)
doc.save(cur_file)
其是读取某个目录下的所有docx文件,去除中文后,然后进行保存到源文件。