本文目录一览:

如何在 Linux 上使用 Python 读取 word 文件信息

第一步:获取doc文件的xml组成文件

import zipfiledef get_word_xml(docx_filename):

with open(docx_filename) as f:

zip = zipfile.ZipFile(f)

xml_content = zip.read('word/document.xml')

return xml_content

第二步:解析xml为树形数据结构

from lxml import etreedef get_xml_tree(xml_string):

return etree.fromstring(xml_string)

第三步:读取word内容:

def _itertext(self, my_etree):

"""Iterator to go through xml tree's text nodes"""

for node in my_etree.iter(tag=etree.Element):

if self._check_element_is(node, 't'):

yield (node, node.text)def _check_element_is(self, element, type_char):

word_schema = '99999'

return element.tag == '{%s}%s' % (word_schema,type_char)

如何使用python读取word的表格并输出为字典?

直接读取value写入csv文件,

import csv

f = open('file.csv','a',newline='')

w = writer(f)

w.writerow(dict(key))

打开csv文件另存为excel.

如果是很多个字典组成的列表,形式像[{a:1,b:2,c:3},……{a:4,b:5,c:6}],就可以用pandas来进行处理,存储为excel, 表头为a,b,c

dict_l = [{a:1,b:2,c:3},……{a:4,b:5,c:6}]

from pandas import DataFrame as DF

df = DF(dict_l)

df.to_csv(filename)

python读取word文档内容

import fnmatch, os, sys, win32com.client

readpath=r'D:/123'

wordapp = win32com.client.gencache.EnsureDispatch("Word.Application")

try:

for path, dirs, files in os.walk(readpath):

for filename in files:

if not fnmatch.fnmatch(filename, '*.docx'):continue

doc = os.path.abspath(os.path.join(path,filename))

print 'processing %s...' % doc

wordapp.Documents.Open(doc)

docastext = doc[:-4] + 'txt'

wordapp.ActiveDocument.SaveAs(docastext,FileFormat=win32com.client.constants.wdFormatText)

wordapp.ActiveDocument.Close()

finally:

wordapp.Quit()

print 'end'

f=open(r'd:/123/test.txt','r')

for line in f.readlines():

print line.decode('gbk')

f.close()

python如何读取word文件

 def PrintAllParagraphs(doc):

            count=doc.Paragraphs.Count

            for i in range(count-1,-1,-1):

                pr=doc.Paragraphs[i].Range

                print pr.Text

                

 app=my.Office.Word.GetInstance()

 doc=app.Documents[0]

 PrintAllParagraphs(doc)

1.什么是域      

域应用基础

        @staticmethod

        def GetInstance():

            u'''获取Word应用程序的Application对象'''

            import win32com.client

            return win32com.client.Dispatch('Word.Application')

my.Office.Word.GetInstance的方法实现如上,是一个使用win32com操纵Word Com的接口的封装

所有Paragraph即段落对象,都是通过Paragraph.Range.Text来访问它的文字的

如何用python读取word

使用Python的内部方法open()读取文本文件

try:

    f=open('/file','r')

    print(f.read())

finally:

    if f:

        f.close()

如果读取word文档推荐使用第三方插件,python-docx 可以在官网上下载

使用方式

# -*- coding: cp936 -*-

import docx

document = docx.Document(文件路径)

docText = '/n/n'.join([

    paragraph.text.encode('utf-8') for paragraph in document.paragraphs

])

print docText

python如何读取word文件中的文本内容并写入到新的txt文件?

from docx import Document

# 打开 word文件

f = open('随便写写行.docx', 'rb')

# 读取 word文件内容

document = Document(f)

# 打印 word 文档段落内容2进制列表

# print(document.paragraphs)

# 打开一个txt文档用来写入数据

with open('result2.txt', 'w') as fw:

  # 遍历 word 段落内容列表

  for context in document.paragraphs:

# 以换行符转换成列表

      text = context.text.split('/n')

      # 按行写入,同时换行

      fw.write(f"{text[0]}/n")

      # 打印看看效果

      print(text[0])

f.close()