求组:用python3怎么将文本转化为WORD格式
如题:我想将一个文件夹里的txt文本(数量比较多),全部改为WORD,要怎么实现,另外,我还希望,将这个每个word中字数保存到表格中,表格中需要两个数据,WORD文件名,以及这个WORD中文本的字数。请问这个要怎么实现,有大神可以指点下吗? 你得先完成 90% 以上的工作,遭遇到瓶颈再来求助,否则,帮你就是繁重的体力劳动。 很简单,10分钟差不多就能搞定了,楼主先自己做一做,实在不会再喊我 qq1151985918 发表于 2021-3-10 15:46很简单,10分钟差不多就能搞定了,楼主先自己做一做,实在不会再喊我
大佬好,我晚上尝试着自己写了下代码,主要实现了打开指定目录下的文本,并读取,其他的步骤没什么头绪,另外,我测试的文本有一个里面内容比较多,貌似只读取了一般内容,不知道怎么回事?我写的代码如下:
import os
import docx
from docx import Document
filepath='D:\测试文件夹'
filelist=os.listdir(filepath)
for file in filelist:
f=open(os.path.join(filepath,file),'r',encoding='utf-8')
s=f.read()
print(s)
本帖最后由 qq1151985918 于 2021-3-10 21:57 编辑
小菜鸟12 发表于 2021-3-10 21:49
大佬好,我晚上尝试着自己写了下代码,主要实现了打开指定目录下的文本,并读取,其他的步骤没什么头绪, ...
你这基本上已经很有那么一个形状了,现在已经把文本的数据读取了出来,就剩下写入 docx 了,已经成功了一半了,读取内容应该不会读取一半的,可能有些地方有问题吧。 本帖最后由 qq1151985918 于 2021-3-10 22:20 编辑
小菜鸟12 发表于 2021-3-10 21:49
大佬好,我晚上尝试着自己写了下代码,主要实现了打开指定目录下的文本,并读取,其他的步骤没什么头绪, ...
这是我刚刚敲的代码,你可以对照一下,我的不一定对,你的不一定错,自己试试看吧
代码有点问题,你应该看得出来,反斜杠\\\\\\\\\\\\\有很多应该是 双反斜杠,而被论坛屏蔽掉了一些
import os
import docx
import openpyxl
doc_help = r"""----------------------------------------------------
请输入需要读取txt的路径
如txt文档路径为 C:\Users\Administrator\Desktop\txt\001.txt
请输入 C:\Users\Administrator\Desktop\txt
----------------------------------------------------"""
print(doc_help)
txtspath = input("请输入路径:")
files = filter(lambda x:x[-4:].lower() == ".txt",os.listdir(txtspath))
def savedocx(path,data):
file = docx.Document()
file.add_paragraph(data)
file.save(path)
if not os.path.exists(txtspath + "\\data\\"):
os.makedirs(txtspath + "\\data\\")
if not os.path.exists(txtspath + "\\txt-docx\\"):
os.makedirs(txtspath + "\\txt-docx\\")
xlsxpath = txtspath + "\\data\\" + "data.xlsx"
wb = openpyxl.Workbook()
ws = wb.active
ws.column_dimensions['A'].width = 30.0
ws.append(['文件名','字数'])
for file in files:
txtpath =txtspath + "\\" + file
docxpath = txtspath + "\\txt-docx\\" + file[:-4] + ".docx"
data = open(txtpath).read()
savedocx(docxpath,data)
ws.append()
wb.save(xlsxpath)
print("OK")
qq1151985918 发表于 2021-3-10 22:08
这是我刚刚敲的代码,你可以对照一下,我的不一定对,你的不一定错,自己试试看吧
代码有点问题,你应 ...
好的,非常感谢大佬,我先研究下,如果有问题,再来请教{:10_266:}
页:
[1]