python解析网页保存word_Python word实现读取及导出代码解析_python_脚本之家

2个简单的代码,帮你实现word的导出和word的读取

功能一:导出word,word中的内容为

代码:

from docx import Document

from docx.enum.text import WD_PARAGRAPH_ALIGNMENT #设置对象居中、对齐等。

from docx.enum.text import WD_TAB_ALIGNMENT,WD_TAB_LEADER #设置制表符等

from docx.shared import Inches #设置图像大小

from docx.shared import Pt #设置像素、缩进等

from docx.shared import RGBColor #设置字体颜色

from docx.shared import Length #设置宽度

from docx.oxml.ns import qn

import time

today=time.strftime("%Y{y}%m{m}%d{d}",time.localtime()).format(y="年",m="月",d="日")

document=Document()

document.styles["Normal"].font.name=u'宋体'# 设置文档的基础字体

document.styles["Normal"].element.rPr.rFonts.set(qn('w:eastAsia'),u'宋体')#设置文档的基础中文字体

#初始化建立第一个自然段

p1=document.add_paragraph()

p1.alignment=WD_PARAGRAPH_ALIGNMENT.CENTER#对齐方式为居中

run1=p1.add_run("关于下达%s产品的通知"%today)

run1.font.name="微软雅黑"

run1.font.size=Pt(21) # 字体大小为21磅

run1.font.bold=True #加粗

p1.space_after=Pt(5)#段后距离5磅

p1.space_before = Pt(5)# 段前距离5磅

# 建立第一个自然段

i='客户3'

p2 = document.add_paragraph()

run2 = p2.add_run("%s:" % i)

run2.font.name = "仿宋_GB2312"

run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')

run2.font.size = Pt(16)

run2.font.bold = True

# 建立第一个自然段

p3 = document.add_paragraph()

run3 = p3.add_run(" 根据公司安排,为提供优质客户服务,我单位将价格通知如下:" )

run3.font.name = "仿宋_GB2312"

run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')

run3.font.size = Pt(16)

run3.font.bold = True

# 建立表格

table=document.add_table(rows=3,cols=3,style='Table Grid')

table.cell(0,0).merge(table.cell(0,2))# 合并第一行

table_run1=table.cell(0,0).paragraphs[0].add_run('XX产品报价表')# 合并单位格内填入XX产品报价表

table_run1.font.name = u"隶书"

table_run1.element.rPr.rFonts.set(qn('w:eastAsia'), u'隶书')

table.cell(0, 0).paragraphs[0].alighment=WD_PARAGRAPH_ALIGNMENT.CENTER#居中

table.cell(1, 0).text='日期'

table.cell(1, 1).text = '价格'

table.cell(1, 2).text = '备注'

table.cell(2, 0).text = today

table.cell(2, 1).text ='100'

table.cell(2, 2).text = ''

document.add_page_break()#分页符

document.save('价格通知.docx')#保存

需要说明的是

run3.font.name = "仿宋_GB2312"

run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')

这两句均是设置字体为仿宋_GB2312,之所以要两种格式写两遍,是因为word对中文支持不太友好,需要再填一句

功能二:读取word,word中的内容为

读取表格外文字的代码:

from docx import Document

document=Document("长恨歌.docx")

print("读取非表格中的内容:")

all_paragraphs=document.paragraphs

for paragraph in all_paragraphs:

print(paragraph.text)

读取表格内文字的代码:

from docx import Document

document=Document("长恨歌.docx")

print("读取表格中的内容:")

tables=document.tables

for i in range(len(tables)):

tb=tables[i]#获取表格的行

tb_rows=tb.rows #读取每一行内容

for i in range(len(tb_rows)):

row_data=[]

row_cells=tb_rows[i].cells#读取每一行单元格内容

for cell in row_cells:#单元格内容

row_data.append(cell.text)

print(''.join(row_data))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值