-
python使用docx模块读写docx文件的方法与docx模块常用方法详解
2020-09-17 22:23:41主要介绍了python使用docx模块读写docx文件的方法与docx模块常用方法详解,需要的朋友可以参考下 -
docx2doc docx转doc
2018-05-27 16:25:47提供docx格式的word文档转换为doc格式的word文档简介demo -
docx output
2020-11-28 13:24:28<div><p>This pull request is to see whether there is interest in adding docx output to flying saucer? <p>By way of background, docx4j has provided XHTML to docx conversion based on a re-packaged ... -
Python—docx 批量生成 docx 文件
2019-07-20 11:46:28一、文档结构 二、方法 from docx import Document from docx.shared import Pt # 字体磅数 from docx.oxml.ns import qn # 中文格式 from docx.shared import Inches # ...from docx.enum.text import WD_PARA...一、文档结构
二、方法
from docx import Document from docx.shared import Pt # 字体磅数 from docx.oxml.ns import qn # 中文格式 from docx.shared import Inches # 图片尺寸 from docx.enum.text import WD_PARAGRAPH_ALIGNMENT from docx.shared import RGBColor import time today = time.strftime("%Y{y}%m{m}%d{d}",time.localtime()).format(y='年',m='月',d='日') # 对客户或者领导的工作报告 Customer_Leader = { '经理1':'9:20', '经理2':'9:30', '经理3':'10:40', '张三': '13:20', '李四': '14:20', '王五': '15:20', } for key,value in Customer_Leader.items(): document = Document() document.styles['Normal'].font.name = u'微软雅黑' document.styles['Normal'].font.size = Pt(14) document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') p = document.add_heading('关于XXX'+Customer_Leader[key]+'今日的报告', 0) # 添加标题 # 自定义--段落样式(样式名, 样式类型),样式类型: 1为段落样式, 2为字符样式, 3为表格样式) UserStyle1 = document.styles.add_style('UserStyle1', 1) UserStyle1.font.size = Pt(30) # 字体尺寸 UserStyle1.font.color.rgb = RGBColor(0xff, 0xde, 0x00) # 字体颜色 UserStyle1.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER # 居中文本 UserStyle1.paragraph_format.first_line_indent = Inches(0.3) # 缩进 UserStyle1.paragraph_format.space_before = Pt(18) # 段前间距 UserStyle1.paragraph_format.space_after = Pt(12) # 段后间距 UserStyle1.font.name = 'Times New Roman' # 西文字体 UserStyle1._element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') # 中文字体 # 自定义--字符样式 UserStyle2 = document.styles.add_style('UserStyle2', 2) UserStyle2.font.size = Pt(15) UserStyle2.font.color.rgb = RGBColor(0x0c, 0x8a, 0xc5) UserStyle2.font.name = '宋体' UserStyle2._element.rPr.rFonts.set(qn('w:eastAsia'), '宋体') # 段落-内容(依次添加段落1,段落2) txt_p1 = '由于天气原因导致产品价格上升%s的通知'%(today) p1 = document.add_paragraph(txt_p1, style=UserStyle1) txt_p2 = '预计2019年1-6月归属于上市公司股东的净利润盈利:7,419.218016万元至7,869.218016万元,同比上年增长约:50%至60%。' p2 = document.add_paragraph('').add_run(txt_p2,style=UserStyle2) # 添加分页符 document.add_page_break() # 创建 有序列表 document.add_paragraph('').add_run('微软财务分析人-有序列表内容').font.size = Pt(20) document.add_paragraph('UBS分析师', style='List Number') document.add_paragraph('纳德拉', style='List Number') document.add_paragraph('德意志银行分析师', style='List Number') # 创建 无序列表 document.add_paragraph('').add_run('微软财务收入-无序列表内容').font.size = Pt(30) document.add_paragraph('游戏还是主要基于游戏机和个人电脑,微软对自己的定位', style='List Bullet') document.add_paragraph('微软会在Windows 10商务组件业务上保持两位数的增长', style='List Bullet') document.add_paragraph('最新的Office对Teams来说是一个全新的突破', style='List Bullet') document.add_paragraph('用户长期地表现出对产品的忠诚度,该产品越来越被认可了', style='List Bullet') # 添加分页符,插入图片(默认居左) document.add_page_break() document.add_paragraph('').add_run('详情价格单').font.size = Pt(30) document.add_picture('../gggg/001.png', width=Inches(1.25)) records = ( ('浙江东日', '预计2019年1-6月归属于上市公司股东的净利润盈利:7,419.218016万元至7,869.218016万元,同比上年增长约:50%至60%。', '因雨雪天气较多,蔬菜批发价格上涨'), ('长城汽车', '预计2019年1-6月归属于上市公司股东的净利润盈利:153,000万元,同比上年下降:58.6%。', '公司提高产品优惠额度让利消费者,并继续加大品牌推广力度及研发投入'), ('圣济堂', '预计2019年1-6月归属于上市公司股东的净利润亏损:1,500万元至2,500万元。', '甲醇市场处于持续低迷状态,医药行业受集中带量采购政策所影响,药品价格有所下降') ) # 添加表 table = document.add_table(rows=1, cols=3) hdr_cells = table.rows[0].cells # 设置表首行标题 hdr_cells[0].text = '股票简称' # 表首行标题赋值 hdr_cells[1].text = '业绩变动' hdr_cells[2].text = '业绩变动原因' for qty, id, desc in records: # for循环将records内容赋值到单元格内 row_cells = table.add_row().cells row_cells[0].text = str(qty) row_cells[1].text = id row_cells[2].text = desc document.save('./demo_'+str(key)+'.docx') # 保存文件
三、表格批量写入数据
from docx import Document from docx.shared import Pt # 字体磅数 from docx.oxml.ns import qn # 中文格式 from docx.shared import RGBColor import time def read_txt(txt_path): f = open(txt_path, "r", encoding="utf-8") lines = f.readlines() data_list = [] for line in lines: data_list.append(line.strip('\n')) f.close() return data_list def write_docx(doc_path,index,text): document = Document() document.styles['Normal'].font.name = u'宋体' document.styles['Normal'].font.size = Pt(10) document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), '宋体') records = ( zip(tuple(text[:5000]),tuple(text[5000:10000])) ) # 添加表(n行两列) table = document.add_table(rows=0, cols=2) for text1, text2 in records: row_cells = table.add_row().cells row_cells[0].text = text1 row_cells[1].text = text2 document.save(doc_path+'/medical_'+str(index)+'.docx') # 保存文件 if __name__ == '__main__': txt_path = './text_local/medical.txt' doc_path = './test_doc' data_list = read_txt(txt_path) doc_num = len(data_list)//5000+1 for index in range(doc_num): try: write_docx(doc_path, index,data_list[index*5000:(index+1)*10000]) except: write_docx(doc_path, index,data_list[index*10000:])
四、批量修改表格文字字体大小颜色
import os from docx import Document from docx.shared import Pt # 字体磅数 from docx.oxml.ns import qn from docx.shared import RGBColor def get_docx(docx_paths): docx_list = [] for paths,dirs,filenames in os.walk(docx_paths): for filename in filenames: if filename.endswith('.docx'): docx_list.append(paths+'/'+filename) return docx_list ''' 增值税发票:深蓝色 #172194(23,33,148) 增值税电子发票:深紫黑色 #1F1023(31,16,35) 增值税发票:浅蓝色 #51557C(81,85,124) 医疗票据: 深黄黑色 #3F4537(63,69,55) 增值税电子发票: 浅黄色 #90867A(144,134,122) ''' def rewrite_doc(docx_path,output_docx_paths): save_name = output_docx_paths+'/xieti_127_127_127_'+docx_path.split('/')[-1] document = Document(docx_path) table = document.tables[0] for row in table.rows: for cell in row.cells: paragraphs = cell.paragraphs paragraph = paragraphs[0] run_obj = paragraph.runs run = run_obj[0] # run.font.size = Pt(6.5) # 字体大小 # run.font.name = u'宋体' # 字体 # run._element.rPr.rFonts.set(qn('w:eastAsia'), '宋体') # 字体 # run.font.name = 'Times New Roman' run.font.color.rgb = RGBColor(23,33,148) # 字体颜色 run.italic = True document.save(save_name) if __name__ == '__main__': input_docx_paths = './标准轮廓宋体大小6.5副本' output_docx_paths = './xieti_23_33_148' docx_list = get_docx(input_docx_paths) for docx_path in docx_list: rewrite_doc(docx_path, output_docx_paths)
有关模板填充:https://www.cnblogs.com/cofear/p/10686299.html
-
oracle.docx
2020-03-11 15:48:39oracle.docx -
Py之docx:Python库之docx简介、安装、使用方法详细攻略
2018-05-27 13:04:43Py之docx:Python库之docx简介、安装、使用方法详细攻略 目录 Python库之docx简介 Python库之docx安装 docx使用方法 1、打开文档 2、使用word文件有好几种方法 Python库之docx简介 Python Dox...Py之docx:Python库之docx简介、安装、使用方法详细攻略
目录
Python库之docx简介
Python Dox是一个用于创建和更新微软Word(.DOX)文件的Python库。python-docx包,这是一个很强大的包,可以用来创建docx文档,包含段落、分页符、表格、图片、标题、样式等几乎所有的word文档中能常用的功能都包含了,这个包的主要功能便是用来创建文档,相对来说用来修改功能不是很强大。
Python Dox允许您创建新文档,并对现有文档进行更改。实际上,它只允许您对现有文档进行更改;只是从一个没有任何内容的文档开始,它可能首先感觉像是从头开始创建一个文档。这个特点是强有力的。文档的外观是由删除所有内容时留下的部分决定的。样式和页眉和页脚等内容与主内容分开,允许您在开始文档中放置大量自定义,然后出现在所生成的文档中。让我们一步一步地创建一个文档一个例子,从文档中可以做的两件事开始,打开它并保存它。
python-docx 0.8.6
python-docxPython库之docx安装
pip install python-docx
docx使用方法
1、打开文档
1、打开文档,这将从内置的默认模板创建一个新文档,并将其保存到名为“Test.Dox”的文件中。所谓的“默认模板”实际上是一个没有内容的Word文件,存储在安装的Python Dox包中。这是大致相同的,因为你选择Word文档模板后,选择Word的文件>新建从模板…菜单项。 from docx import Document document = Document() document.save('test.docx')
2、使用word文件有好几种方法
T1利用Python Dox库进行操作,建议首选,不用用过调用第三方com口,直接读取
T2利用win32com库import win32com from win32com.client import Dispatch, constants w = win32com.client.Dispatch('Word.Application')
-
DOCX格式转DOC工具docx2doc.rar
2020-04-22 00:07:26DOCX格式转DOC工具。非常好用DOCX格式转DOC工具。 -
vba 批量doc转docx,docx转doc.zip
2020-09-18 09:04:19vba 批量doc转docx,docx转doc,已好用 -
外泄追踪.docx
2020-11-13 17:04:26外泄追踪.docx外泄追踪.docx外泄追踪.docx外泄追踪.docx外泄追踪.docx -
合并docx文件
2019-02-27 15:37:39合并docx文件 -
python-docx生成docx文件
2020-03-27 10:01:45python-docx是python编程语言的一个库,可以对docx文档进行读,同时也可以进行生成docx文档,这篇文档主要是讲生成docx文档。 1、生成一个空docx文档 # coding:utf-8 from docx import Document document = ...python-docx是python编程语言的一个库,可以对docx文档进行读,同时也可以进行生成docx文档,这篇文档主要是讲生成docx文档。
1、生成一个空docx文档
# coding:utf-8 from docx import Document document = Document() document.save('1.docx')
2、往docx文档中添加内容,并设置文字的字体以及字号
# coding:utf-8 from docx import Document from docx.shared import Pt from docx.oxml.ns import qn document = Document() p = document.add_paragraph(style=None) p.paragraph_format.line_spacing = 1.0 run = p.add_run('生成docx文档') # 往word中添加文字 run.font.size = Pt(20) # 设置文字的字体大小 run.font.name = u'等线(正文)' # 设置文字的字体 r = run._element r.rPr.rFonts.set(qn('w:eastAsia'), u'等线(正文)') document.save('1.docx')
生成的结果如下所示:
3、添加表格
生成2行3列,靠右对齐,只对第1行进行了行高的设置
# coding:utf-8 from docx import Document from docx.shared import Pt from docx.oxml.ns import qn from docx.shared import Inches from docx.enum.table import WD_TABLE_ALIGNMENT document = Document() p = document.add_paragraph(style=None) p.paragraph_format.line_spacing = 1.0 run = p.add_run('生成docx文档') # 往word中添加文字 run.font.size = Pt(20) # 设置文字的字体大小 run.font.name = u'等线(正文)' # 设置文字的字体 r = run._element r.rPr.rFonts.set(qn('w:eastAsia'), u'等线(正文)') # 添加表格 table = document.add_table(rows=2, cols=3, style='Table Grid') table.cell(0, 0).width = Inches(6) table.rows[0].height = Inches(0.8) table.alignment = WD_TABLE_ALIGNMENT.RIGHT document.save('1.docx')
运行结果如下所示:
4、页边距的设置
# coding:utf-8 from docx import Document from docx.shared import Pt from docx.oxml.ns import qn from docx.shared import Inches from docx.enum.table import WD_TABLE_ALIGNMENT document = Document() p = document.add_paragraph(style=None) p.paragraph_format.line_spacing = 1.0 run = p.add_run('生成docx文档') # 往word中添加文字 run.font.size = Pt(20) # 设置文字的字体大小 run.font.name = u'等线(正文)' # 设置文字的字体 r = run._element r.rPr.rFonts.set(qn('w:eastAsia'), u'等线(正文)') # 添加表格 table = document.add_table(rows=2, cols=3, style='Table Grid') table.cell(0, 0).width = Inches(6) table.rows[0].height = Inches(0.8) table.alignment = WD_TABLE_ALIGNMENT.RIGHT # 页边距的设置 sec = document.sections[0] # sections对应文档中的“节” sec.left_margin = Inches(0.2) # 以下依次设置左、右、上、下页面边距 sec.right_margin = Inches(0.3) sec.top_margin = Inches(0.2) sec.bottom_margin = Inches(0.2) sec.page_width = Inches(8.27) # 设置页面宽度 sec.page_height = Inches(11.69) # 设置页面高度 document.save('1.docx')
设置纸张的大小为A4纸的大小
运行的结果如下所示:
注意:在运行代码时,一定要将生成的docx关掉,否则运行会出现错误
-
python+docx批量替换docx文件文本
2020-03-18 18:13:10搜索文档中是否包含指定词汇,批量替换 暂只支持docx文本替换,若文档中包含表格图片等信息会自动跳过 添加支持表格功能,并可读取csv文件形成关键字 -
Zookeeper.docx
2020-10-10 13:07:16Zookeeper.docxZookeeper.docxZookeeper.docxZookeeper.docx -
Word模板-简约英伦风信纸.docx.docx
2019-09-06 12:14:46Word模板-简约英伦风信纸.docx.docx -
Python使用docx包读取docx文件
2020-12-29 09:26:48#Python使用docx包读取docx文件 在使用时,首先安装docx, 终端输入:pip install python-docx import docx data_path = '/Users/mac/Desktop/中医药3期/古籍文本/1550-急救良方.docx' data = docx.Document(data_...#Python使用docx包读取docx文件
在使用时,首先安装docx,
终端输入:pip install python-docximport docx data_path = '/Users/mac/Desktop/中医药3期/古籍文本/1550-急救良方.docx' data = docx.Document(data_path) for book in data.paragraphs: print(book.text)
-
基于python的docx模块处理word和WPS的docx格式文件方式
2020-12-20 16:11:37Python docx module for Word or WPS processing 本文是通过docx把word中的表格中的某些已填好的内容提取出来,存入excel表格。 首先安装docx的python模块: pip install python-docx 由于处理的为中文和符号,... -
解决python-docx打包之后找不到default.docx的问题
2020-12-20 18:08:54主要是打包的时候没有把default.docx打包进去 在创建Document的时候,采用本地的default.docx,可以从安装目录templates文件夹中找到,放置到exe目录下面即可 doc = Document(docx=os.path.join(os.getcwd(), ... -
3754个常用汉字简繁对照表-拼音顺序.docx.docx
2020-10-22 15:42:373754个常用汉字简繁对照表-拼音顺序.docx.docx -
Pcb布线工程师设计经验谈.docx.docx
2019-09-16 21:48:31Pcb布线工程师设计经验谈.docxdocx,Pcb布线工程师设计经验谈.docx -
MOS值的计算与优化.docx.docx
2019-09-14 12:58:43MOS值的计算与优化.docxdocx,MOS值的计算与优化.docx -
python函数.docx
2020-08-19 13:34:17python函数.docx -
docx4j实现docx转pdf.rar
2019-12-31 16:48:51文档中,包含说明文档、lib架包以及工具类的代码。说明文档中,包含了工程依赖(maven...包你拿到手,立马就能实现docx转word功能。工具类的代码,已经排出了测试代码的各种坑,可以实现文字替换、表格替换等系列功能。 -
Simple.Docx
2018-09-06 16:08:28Simple.Docx是一个简单的word组件,可以对word97以后的docx文件进行书签的替换操作。使用于需要根据模板来生成word文档的客户使用。 (一)程序的优点: 1、小巧。程序大小仅8K; 2、原生,不依赖第三方组件。... -
时延优化案例.docx
2020-09-23 17:20:34时延优化案例.docx时延优化案例.docx时延优化案例.docx时延优化案例.docx时延优化案例.docx时延优化案例.docx -
阿里云Redis.docx
2020-09-01 22:12:12阿里云Redis.docx阿里云Redis.docx阿里云Redis.docx阿里云Redis.docx阿里云Redis.docx -
阿里云DTS.docx
2020-09-01 22:11:40阿里云DTS.docx阿里云DTS.docx阿里云DTS.docx阿里云DTS.docx阿里云DTS.docx -
Docx.dll下载
2018-03-20 13:41:27Docx.dll下载,Docx.dll下载,Docx.dll下载,Docx.dll下载,Docx.dll下载 -
python docx字体设置
2020-12-21 12:15:04from docx import Document from docx.oxml.ns import qn from docx.shared import Pt,RGBColor 如果不进行字体手动设置的话,生成的文字字体格式就会千奇百怪,如下图 Doc = Document() Doc.add_heading("刚来csdn... -
read password protected docx file With xceedsoftware.DocX?
2020-12-30 08:03:59<div><p>how can i open passwordProtected.docx file with this exceed.docX ? <pre><code> // where am i gonna put the decrytion password here????? DocX document = DocX.Load(filePath ); document....
-
java中UUID的使用
-
Spring Boot2.X仿朋友圈PC版系统实战_架构1.0
-
重庆公共交通换乘系统的简单实现.zip
-
微信支付2021系列之付款码支付一学就会java版
-
【数据分析-随到随学】数据分析建模和预测
-
httpclient支持jar打包
-
Runnable和Callable
-
Betterwmf CAD 2 Word .rar
-
Excel高级图表技巧
-
LeetCode 128. Longest Consecutive Sequence(最长连续序列) 并查集/hard
-
excel批量生成word.rar
-
【数据分析-随到随学】量化交易策略模型
-
性能测试面面观
-
信息系统项目管理师考前必做650题.pdf
-
subplot_std.m
-
Xdebug helper.zip
-
《零起点TF与量化交易》源码.rar
-
基于javaweb记账助手APP管理系统设计与实现(含源码)
-
【数据分析-随到随学】SPSS调查问卷统计分析
-
flutter插件调用APP页面、使用原生aar,framework库