当前位置:首页 » 编程语言 » python生成txt文件

python生成txt文件

发布时间: 2024-02-09 07:39:43

Ⅰ 利用python将docx文件转为txt

背景:工作中需要将文件夹下的若干word文件docx转换为对应txt文本格式

因此需要将docx中文本读取出来,然后保存为txt格式即可

需要的python模块为 python-docx : https://python-docx.readthedocs.io/en/latest/index.html, 导入模块时候导入docx

(只能读取.docx文件,不能读取.doc文件)

注意,在PyPi里还有一个叫docx的库,已经停止更新,不建议使用)

http://www.cnblogs.com/geek-arking/p/9300617.html

上面的方法只能读取docx文件,如果读取doc会报错

结果报错:docx.opc.exceptions.PackageNotFoundError: Package not found。还是无法识别doc

“改变拓展名并没有改变其编码方式,因此无法读取文本内容,需将doc文件用word另存为docx后再用python-docx读取其内容”

对于要转换的doc文件,网上的资料都是使用win32,需要安装 pypiwin32

https://www.cnblogs.com/AlgorithmDot/p/3386918.html

通过上面的方法,有时可以直接将doc转换为txt文件,有时候会报错。

这里我们可以考虑将doc文件直接转换为docx然后再通过上面的方法读取为txt,如果手动将doc修改为txt或者docx,打开文件会显示乱码,但是可以用其提供的SaveAs方法将.doc文档利用手动的方式“另存为”.docx文档,就能够成功打开转化后的.docx文档,

doc.SaveAs(tmp +'.docx', 16)

其中16的含义如下:

利用win32com接口直接调用office API,好处是简单、兼容性好,只要office能处理的,python都可以处理,处理出来的结果和office word里面“另存为”一致。

下面是office 2007支持的全部文件格式对应表:

wdFormatDocument = 0 

wdFormatDocument97 = 0 

wdFormatDocumentDefault = 16 

wdFormatDOSText = 4 

wdFormatDOSTextLineBreaks = 5 

wdFormatEncodedText = 7 

wdFormatFilteredHTML = 10 

wdFormatFlatXML = 19 

wdFormatFlatXMLMacroEnabled = 20 

wdFormatFlatXMLTemplate = 21 

= 22 

wdFormatHTML = 8 

wdFormatPDF = 17 

wdFormatRTF = 6 

wdFormatTemplate = 1 

wdFormatTemplate97 = 1 

wdFormatText = 2 

wdFormatTextLineBreaks = 3 

wdFormatUnicodeText = 7 

wdFormatWebArchive = 9 

wdFormatXML = 11 

wdFormatXMLDocument = 12 

= 13 

wdFormatXMLTemplate = 14 

= 15 

wdFormatXPS = 18

照着字面意思应该能对应到相应的文件格式。

1、新建或打开文件。这个比较简单用docx的Document类,若指定路径则是打开文档;若没有指定路径则是新建文档

2、保存文件。有打开,就有保存。用Document类的save方法,其中参数是保存的文件路径,或者要保存的文件流。一般指定路径即可。

doc.save(path_or_stream)

3、对象集合。python-docx包含了word文档的相关对象集合。

4、插入段落。段落是word最基本的对象之一。

5、新增样式。这个帮助文档里面说得不仔细,而且还是英文的。我手头上的项目用到这个,就自己琢磨出怎么使用,如下。

6、应用字符样式。字符自然是在段落里面的,可以采用下面方法给段落追加文字和设置字符样式。

#插入一个空白段落

p = doc.add_paragraph('')

p.add_run('123', style="Heading 1 Char")

p.add_run('456')

p.add_run('789', style="Heading 2 Char")

#这样一个段落就应用了两个字符样式,中间“456”就没应用样式

printp.text#输出结果是u'123456789' 也还是连续的

7、设置字体。当然可以不用通过设置样式对某些字进行设置,也可以直接设置。

p = doc.add_paragraph('')

r = p.add_run('123')

r.font.bold =True#加粗

r.font.italic =True#倾斜 等等...

8、表格操作。表格也是经常用到的一种对象类型。

Ⅱ 如何将python运行结果保存成txt

将python运行结果保存成txt的具体操作步骤如下:

1、首先我们打开电脑桌面,在电脑桌面上点按win+R进入运行,在搜索框里输入cmd并点击确定。

Ⅲ Python批量读取加密Word文档转存txt文本实现

# -*- coding:utf-8 -*-

from win32com import client as wc

import os

key = '文档密码'

def Translate(input, output):

# 转换

wordapp = wc.Dispatch('Word.Application')

try:

doc = wordapp.Documents.Open(input, False, False, False,key)

doc.SaveAs(FileName=output, FileFormat=4, Encoding="gb2312")

doc.Close()

print(input, "完成")

os.remove(input)

# 为了让python可以在后续操作中r方式读取txt和不产生乱码,参数为4

except:

print(input,"密码错误")

if __name__ == '__main__':

#docx文档物理路径

path = r"C:Usersdocx"

key = '文档密码'

j=0

for file in os.listdir(path):

if '.doc' in file:

name = file.split(".docx")[0]

#输入文档物理路径

input_file = r"C:Usersdocx"+""+file

#输出文档物理路径

output_file=r"C:Users xt"+""+name+".txt"

Translate(input_file, output_file)

j=j+1

print(j)

else:continue

Ⅳ python怎么创建一个txt文件

python怎么创建一个txt文件的方法。

如下参考:

1.首先使用内置的空闲编辑器进行编辑(右键单击并选择),如下图所示。

Ⅳ 怎么用python把save文件改成txt文件

一、利用open和write函数
with open('test.txt','w') as f:
f.write(test)
其中test.txt为要保存的文件filename,test为要保存的数据,可以为字符串str类型,也可以是bytes类型,但是此种方法无法保存数组,数组保存需要下面第二种方法。
二、利用np.save函数

np.savetxt('test.txt',test,fmt='%d')
其中test.txt为要保存的文件filename,test为要保存的数组,fmt='%d'为数据保存格式,保存为整数。

Ⅵ python怎么新建文档怎么用python建立一个txt文档并输入内容啊

在电脑桌誉胡槐面上,新建一个名为做宏a的文件夹。

并记住这个文件夹里面的绝对路径,我这是:

C:\Users\Administrator\Desktop\a

注意,此时文件夹a里面是空的。

打开python的编译器;

我用的python是Anaconda整合的python3的版本对应的编译器:spyder。

开端就写:

#!/usr/bin/python

这就像是一句开场白。

既然需要输出中庆友文,那么就需要设定编码格式:

# -*- coding:utf-8 -*-

用python在文件夹a里面,建立一个b.txt文档:

file = open('C:/Users/Administrator/Desktop/a/b.txt','w')

'w'表示这个文档可以编辑,就是可读可写的意思。

在里面写文字:

file.write('你好,\n  世界。')

其中,\n是换行符。

整体代码如下:

#!/usr/bin/python

# -*- coding:utf-8 -*-

file = open('C:/Users/Administrator/Desktop/a/b.txt','w')

file.write('你好,\n  世界。')

而此时,a文件夹里面已经有了一个b.txt文档。

打开这个文档,可以看到内容如下图所示。

热点内容
新手机如何登录微信密码忘记了 发布:2024-11-29 11:34:34 浏览:543
笔记本配置低怎么玩lol 发布:2024-11-29 11:34:32 浏览:460
如何在iphone上玩安卓号 发布:2024-11-29 11:24:21 浏览:753
服务器店铺怎么取名 发布:2024-11-29 11:19:26 浏览:3
phpapache日志 发布:2024-11-29 11:07:26 浏览:309
国图数据库 发布:2024-11-29 10:34:15 浏览:541
vpn免流服务器搭建 发布:2024-11-29 10:26:12 浏览:245
c源文件编译后的扩展名为 发布:2024-11-29 10:08:40 浏览:924
脚本自动登录 发布:2024-11-29 09:55:27 浏览:63
安卓的无线网络在哪里 发布:2024-11-29 09:54:13 浏览:653