求助大神:如何用Python docx解析一个Word文档,在某些字段处插入文本或表格,更换页眉页脚等?急~ 100
仅会语法的Python新手,任务是通过编程来生成一个Word文档,可以用模板进行替换,但不会改替换的文字的格式,无法在想要插入的地方插入表格,据说通过解析WordXML可...
仅会语法的Python新手,任务是通过编程来生成一个Word文档,可以用模板进行替换,但不会改替换的文字的格式,无法在想要插入的地方插入表格,据说通过解析Word XML可以实现,但是对这些没有概念,所以不知道如何下手才能完成任务,求大神给个如何去做的方向,需要用到什么库,或者如果别的语言有很适合完成这个任务的库,也请告诉我。谢谢!
展开
1个回答
展开全部
from docx import Document
from docx.shared import Inches
document = Document()
document.add_heading('Document Title', 0)
p = document.add_paragraph('A plain paragraph having some ')
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = True
document.add_heading('Heading, level 1', level=1)
document.add_paragraph('Intense quote', style='IntenseQuote')
document.add_paragraph(
'first item in unordered list', style='ListBullet'
)
document.add_paragraph(
'first item in ordered list', style='ListNumber'
)
document.add_picture('monty-truth.png', width=Inches(1.25))
table = document.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
for item in recordset:
row_cells = table.add_row().cells
row_cells[0].text = str(item.qty)
row_cells[1].text = str(item.id)
row_cells[2].text = item.desc
document.add_page_break()
document.save('demo.docx')
这是一个demo for docx 你可以试试
from docx.shared import Inches
document = Document()
document.add_heading('Document Title', 0)
p = document.add_paragraph('A plain paragraph having some ')
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = True
document.add_heading('Heading, level 1', level=1)
document.add_paragraph('Intense quote', style='IntenseQuote')
document.add_paragraph(
'first item in unordered list', style='ListBullet'
)
document.add_paragraph(
'first item in ordered list', style='ListNumber'
)
document.add_picture('monty-truth.png', width=Inches(1.25))
table = document.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
for item in recordset:
row_cells = table.add_row().cells
row_cells[0].text = str(item.qty)
row_cells[1].text = str(item.id)
row_cells[2].text = item.desc
document.add_page_break()
document.save('demo.docx')
这是一个demo for docx 你可以试试
追问
谢谢你的回答,Python docx 的样例我看了,简单的也会用点,只是有一些功能Pythondocx没法完成,比方说文字替换功能,还有修改页眉页脚,我现在想在Word中我想插入表格的位置插入表格,但是根据样例中所写,它只能把表格添加在docx的末尾。求问有没有别的办法,或者别的语言的库也可以?
博思aippt
2024-07-20 广告
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT...
点击进入详情页
本回答由博思aippt提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询