20230807在WIN10下使用python3将TXT文件转换为DOCX(在UTF8编码下转换为DOCX有多一行的瑕疵)

20230807在WIN10下使用python3将TXT文件转换为DOCX(在UTF8编码下转换为DOCX有多一行的瑕疵)
2023/8/7 12:58

https://translate.google.com/?sl=en&tl=zh-CN&op=docs
缘起,由于google的文档翻译不支持SRT/TXT格式的字幕,因此需要将SRT格式的字幕转为DOCX。
Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org.mkv


1、ANSI编码的TXT文件转DOCX:
Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org_track3_eng.srt
直接使用记事本另存为ANSI编码的:ansi.txt
完成之后可以确认的!

 

 

 

 

!!!!
https://wenku.csdn.net/answer/2cd4b739868911ed9a8700163e34985e
将txt文本转换成doc格式文件,直接写python代码


可以使用 python-docx 库来将 txt 文件转换为 docx 格式文件。
首先,需要安装 python-docx 库:
pip install python-docx

然后,可以使用以下代码将 txt 文件转换为 docx 格式文件:
import docx
# 读取 txt 文件with open('input.txt', 'r') as f:
    text = f.read()
# 创建一个新的 docx 文档
document = docx.Document()
# 将 txt 文本写入文档
document.add_paragraph(text)
# 保存文档
document.save('output.docx')
上面的代码将会读取名为 input.txt 的 txt 文件,并将其内容写入一个新的 docx 文档中,最后保存为 output.docx 文件。


import docx

with open('ansi.txt', 'r') as f:
    text = f.read()

#docment = docx.Docment()
docment = docx.Document()

docment.add_paragraph(text)
docment.save('ansi.docx')


Microsoft Windows [版本 10.0.19044.2728]
(c) Microsoft Corporation。保留所有权利。

C:\Users\QQ>cd D:\ENG2DOCX

C:\Users\QQ>d:

D:\ENG2DOCX>dir
 驱动器 D 中的卷是 DATA
 卷的序列号是 547F-1046

 D:\ENG2DOCX 的目录

2023/08/07  18:00    <DIR>          .
2023/08/07  18:00    <DIR>          ..
2023/08/07  18:02               186 ansi.py
2023/08/07  13:03            26,294 ansi.txt
2022/12/15  10:46            26,297 Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org_track3_eng.srt
2023/08/07  10:18               278 utf8.py
2023/08/07  10:17            26,294 utf8.txt
               5 个文件         79,349 字节
               2 个目录 272,317,231,104 可用字节

D:\ENG2DOCX>
D:\ENG2DOCX>python ansi.py

D:\ENG2DOCX>dir
 驱动器 D 中的卷是 DATA
 卷的序列号是 547F-1046

 D:\ENG2DOCX 的目录

2023/08/07  18:03    <DIR>          .
2023/08/07  18:03    <DIR>          ..
2023/08/07  18:03            47,533 ansi.docx
2023/08/07  18:02               186 ansi.py
2023/08/07  13:03            26,294 ansi.txt
2022/12/15  10:46            26,297 Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org_track3_eng.srt
2023/08/07  10:18               278 utf8.py
2023/08/07  10:17            26,294 utf8.txt
               6 个文件        126,882 字节
               2 个目录 272,317,181,952 可用字节

D:\ENG2DOCX>

 

 

 

 

 

 

 

 

 

 

 


注意,如果 txt 文件中包含中文字符,可能会出现乱码问题。这时可以使用 codecs 库来解决这个问题:
import codecs
import docx
# 读取 txt 文件,使用 codecs 库的 open 方法,指定编码为 utf-8with codecs.open('input.txt', 'r', 'utf-8') as f:
    text = f.read()
# 创建一个新的 docx 文档
document = docx.Document()
# 将 txt 文本写入文档
document.add_paragraph(text)
# 保存文档
document.save('output.docx')复制代码
这样就可以将 txt 文本转换为 docx 格式文件,并且避免中文字符乱码的问题。


#docment.save('ansi.docx')


import codecs
import docx

with codecs.open('utf8.txt', 'r', 'utf-8') as f:
    text = f.read()

#docment = docx.Docment()
docment = docx.Document()

docment.add_paragraph(text)
docment.save('utf8.docx')


D:\ENG2DOCX>
D:\ENG2DOCX>
D:\ENG2DOCX>dir
 驱动器 D 中的卷是 DATA
 卷的序列号是 547F-1046

 D:\ENG2DOCX 的目录

2023/08/07  18:06    <DIR>          .
2023/08/07  18:06    <DIR>          ..
2023/08/07  18:03            47,533 ansi.docx
2023/08/07  18:02               186 ansi.py
2023/08/07  13:03            26,294 ansi.txt
2022/12/15  10:46            26,297 Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org_track3_eng.srt
2023/08/07  18:06            26,294 docx2ansi.txt
2023/08/07  18:09               217 utf8.py
2023/08/07  10:17            26,294 utf8.txt
               7 个文件        153,115 字节
               2 个目录 272,315,310,080 可用字节

D:\ENG2DOCX>
D:\ENG2DOCX>
D:\ENG2DOCX>python utf8.py

D:\ENG2DOCX>dir
 驱动器 D 中的卷是 DATA
 卷的序列号是 547F-1046

 D:\ENG2DOCX 的目录

2023/08/07  18:12    <DIR>          .
2023/08/07  18:12    <DIR>          ..
2023/08/07  18:03            47,533 ansi.docx
2023/08/07  18:02               186 ansi.py
2023/08/07  13:03            26,294 ansi.txt
2022/12/15  10:46            26,297 Ch4.Unreported.World.2022.Mexicos.Psychedelic.Toads.1080p.HDTV.x265.AAC.MVGroup.org_track3_eng.srt
2023/08/07  18:06            26,294 docx2ansi.txt
2023/08/07  18:12            47,746 utf8.docx
2023/08/07  18:09               217 utf8.py
2023/08/07  10:17            26,294 utf8.txt
               8 个文件        200,861 字节
               2 个目录 272,315,260,928 可用字节

D:\ENG2DOCX>

 

 

 

 


http://huijobs.cn/article/article-detail/11600/
python实现txt转word
2022年11月17日 23:06

def TXTRead_Writeline():
    ms=open("./file/test.txt") #读取文件
    for line in ms.readlines(): #逐行写入
        with open("./file/test.doc","a") as mon:
            mon.write(line)
TXTRead_Writeline()


LOG:
Type "help", "copyright", "credits" or "license" for more information.
>>> import docx
>>> ms=open("ansi.txt")
>>> print(ms)
<_io.TextIOWrapper name='ansi.txt' mode='r' encoding='cp936'>
>>> for line in ms.readlines():
...     with open("test.docx","a") as mon:
...             mon.write(line)
...
2
30
27

 


test.py【将ANSI编码的TXT可以转换为DOC或者DOCX】
import docx
ms=open("ansi.txt")
#print(ms)

for line in ms.readlines():
        #with open("test.doc","a") as mon:
        with open("test.docx","a") as mon:
            mon.write(line)


参考资料:
https://blog.51cto.com/u_16175451/6829720
python怎么给txt文档添加换行符


https://www.zhihu.com/question/29948454/answer/2774476613?utm_id=0
请问python怎么做到在写入的TXT中换行?

line = line.strip('\n')

https://blog.csdn.net/u010565244/article/details/19193635
关于python 的line.strip()方法


python utf-8 txt 转 DOCX 多一个换行
【貌似有道理,但是没有实现】
https://www.jianshu.com/p/7307262a6197
使用python批量转换编码时多余换行的问题

最近使用python批量将项目中的GBK编码文件转换为UTF8时遇到了会自动给每一行结尾多添加一个换行符的问题这样会导致多行宏命令失效

原因是使用文本读写模式 ‘w’ ‘r’

修改为使用 ‘wb’ ‘rb’ 使用二进制接收在使用utf8编码为str然后以二进制方式写入就可以了


python write 换行
python txt 转 DOCX
Python TXT 转 DOCX 多换行
python utf8转gbk
https://blog.csdn.net/qq_40845077/article/details/124872708
Python代码——实现txt转docx


https://blog.csdn.net/qq_40837206/article/details/130323856
python实现txt与docx互转


https://codeleading.com/article/62046304563/
Python代码——实现txt转docx


https://blog.csdn.net/qq_33005553/article/details/124755791
python 去除 txt文本换行

python 递归读取
https://blog.51cto.com/love51/6389966
python递归获取文件 python 递归文件夹


https://www.bilibili.com/read/cv13745103/
Python代码——实现txt转docx


https://zhuanlan.zhihu.com/p/564678085
Python txt文件转word 格式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/64156.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Transformer学习笔记

Transformer学习笔记 前言前提条件相关介绍Transformer总体架构编码器&#xff08;Encoder&#xff09;位置编码&#xff08;Positional Encoding&#xff09;get_attn_pad_mask函数&#xff08;Padding Mask&#xff09;EncoderLayerMultiHeadAttentionScaledDotProductAttent…

webpack基础知识七:说说webpack proxy工作原理?为什么能解决跨域?

一、是什么 webpack proxy&#xff0c;即webpack提供的代理服务 基本行为就是接收客户端发送的请求后转发给其他服务器 其目的是为了便于开发者在开发模式下解决跨域问题&#xff08;浏览器安全策略限制&#xff09; 想要实现代理首先需要一个中间服务器&#xff0c;webpac…

Llama 2 云端部署与API调用【AWS SageMaker】

Meta 刚刚发布了 Llama 2 大模型。如果你和我们一样&#xff0c;你一定会迫不及待地想要亲自动手并用它来构建。 推荐&#xff1a;用 NSDT设计器 快速搭建可编程3D场景。 使用任何类型的 LLM 进行构建的第一步是将其托管在某处并通过 API 使用它。 然后你的开发人员可以轻松地将…

HTML5注册页面

分析 注册界面实际上是一个表格&#xff08;对齐&#xff09;&#xff0c;一行有两个单元格。 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevic…

致远OA协同管理软件无需登录getshell

一个男子汉&#xff0c;老守在咱村那个土圪崂里&#xff0c;又有什么意思&#xff1f;人就得闯世事&#xff01;安安稳稳活一辈子&#xff0c;还不如痛痛快快甩打几下就死了&#xff01;即使受点磨难&#xff0c;只要能多经一些世事&#xff0c;死了也不后悔&#xff01; 漏洞…

NodeJS原型链污染ctfshow_nodejs

文章目录 NodeJS原型链污染&ctfshow_nodejs前言0x01.原型与原型链0x02.prototype和__proto__分别是什么&#xff1f;0x03.原型链继承不同对象的原型链* 0x04.原型链污染原理0x05.merge()导致原型链污染0x06.ejs模板引擎RCEejs模板引擎另一处rce 0x07.jade模板引擎RCE【ctfs…

使用RecyclerView构建灵活的列表界面

使用RecyclerView构建灵活的列表界面 1. 引言 在现代移动应用中&#xff0c;列表界面是最常见的用户界面之一&#xff0c;它能够展示大量的数据&#xff0c;让用户可以浏览和操作。无论是社交媒体的动态流、商品展示、新闻列表还是任务清单&#xff0c;列表界面都扮演着不可或…

Vue2 第二十节 vue-router (四)

1.全局前置路由和后置路由 2.独享路由守卫 3.组件内路由守卫 4.路由器的两种工作模式 路由 作用&#xff1a;对路由进行权限控制 分类&#xff1a;全局守卫&#xff0c;独享守卫&#xff0c;组件内守卫 一.全局前置路由和后置路由 ① 前置路由守卫&#xff1a;每次路由…

开箱报告,Simulink Toolbox库模块使用指南(二)——MATLAB Fuction模块

文章目录 前言 MATLAB Fuction模块 采样点设置 FFT 求解 分析和应用 总结 前言 见《开箱报告&#xff0c;Simulink Toolbox库模块使用指南&#xff08;一&#xff09;——powergui模块》 MATLAB Fuction模块 MATLAB Fuction模块是在Simulink建模仿真或生成代码时&#x…

Vue中监听路由参数变化的几种方式

目录 一. 路由监听方式&#xff1a; 通过 watch 进行监听 1. 监听路由从哪儿来到哪儿去 2. 监听路由变化获取新老路由信息 3. 监听路由变化触发方法 4. 监听路由的 path 变化 5. 监听路由的 path 变化, 使用handler函数 6. 监听路由的 path 变化&#xff0c;触发method…

无锚框原理 TOOD:Task-aligned One-stage Object Detection

无锚框原理 TOOD&#xff1a;Task-aligned One-stage Object Detection 一 摘要二 引言TOOD设计 三 具体设计Task-aligned Head任务对齐的预测器 TAP预测对齐 TAL 任务对齐学习Task-aligned Sample Assignment多任务损失 一 摘要 一阶段目标检测通常通过优化两个子任务来实现&…

CSS中所有选择器详解

文章目录 一、教学视频二、基础选择器1.标签选择器2.类选择器3.id选择器4.通配符选择器 三、复合选择器1.交集选择器2.并集选择器 四、属性选择器1.[属性]2.[属性属性值]3.[属性^属性值]4.[属性$属性值]5.[属性*属性值] 五、关系选择器1.父亲>儿子2.祖先 后代3.兄弟4.兄~弟 …

Mermaid系列之FlowChart流程图

一.欢迎来到我的酒馆 介绍mermaid下&#xff0c;Flowchat流程图语法。 目录 一.欢迎来到我的酒馆二.什么是mermiad工具三.在vs code中使用mermaid四.基本语法 二.什么是mermiad工具 2.1 mermaid可以让你使用代码来创建图表和可视化效果。mermaid是一款基于javascript语言的图表…

Vue2 第二十一节 Vue UI组件库

移动端常用UI组件 1. Vant https://youzan.github.io/vant 2. Cube UI https://didi.github.io/cube-ui 3. Mint UI http://mint-ui.github.io PC端常用UI组件 1. Element UI https://element.eleme.cn 2. IView UI https://www.iviewui.com 一. Element UI 的引入和使…

我国洪涝灾害分布图

声明&#xff1a;来源网络&#xff0c;仅供学习&#xff01;

Apache Paimon 学习笔记

本博客对应于 B 站尚硅谷教学视频 尚硅谷大数据Apache Paimon教程&#xff08;流式数据湖平台&#xff09;&#xff0c;为视频对应笔记的相关整理。 1 概述 1.1 简介 Flink 社区希望能够将 Flink 的 Streaming 实时计算能力和 Lakehouse 新架构优势进一步结合&#xff0c;推…

C++QT教程1——QT概述(下载与安装)

文章目录 1 Qt概述1.1 什么是Qt1.2 Qt的发展史1.3 Qt版本1.4 Qt的下载与安装下载地址&#xff1a;其实我是有点懵逼的&#xff0c;因为还有个qtcreator&#xff0c;我差点不知道下哪个。。。&#xff08;qt框架比qtcreator功能更多更强大&#xff09; 安装 1.5 Qt的优点1.6 QT成…

了解IL汇编异常处理语法

从网上拷过来一个IL汇编程序&#xff0c;编译时先报如下错&#xff0c; 看它是把空格识别为了下注红线的字符&#xff0c;这是字符编码的问题&#xff0c;用记事本替换功能替换了&#xff1b; 然后又报如下的错&#xff0c; 看不出来问题&#xff0c;拷一句正确的来&#xff0…

[考研机试] KY20 完数VS盈数 清华大学复试上机题 C++实现

描述 一个数如果恰好等于它的各因子(该数本身除外)子和&#xff0c;如&#xff1a;6321。则称其为“完数”&#xff1b;若因子之和大于该数&#xff0c;则称其为“盈数”。 求出2到60之间所有“完数”和“盈数”。 输入描述&#xff1a; 题目没有任何输入。 输出描述&#…

STM32 4G学习(二)

特性参数 ATK-IDM750C是正点原子开发的一款高性能4G Cat1 DTU产品&#xff0c;支持移动4G、联通4G和电信4G手机卡。 它以高速率、低延迟和无线数传作为核心功能&#xff0c;可快速解决应用场景下的无线数传方案。 它支持TCP/UDP/HTTP/MQTT/DNS/RNDIS/NTP协议&#xff0c;支持…
最新文章