woqunina 发表于 2022-1-15 22:51

小白再求助,如何利用python根据word新目录加入对应的正文并保存?

本帖最后由 woqunina 于 2022-1-16 10:48 编辑

对于小白的我来说,昨天的问题各位大神昨天给出的答案给了很大的启发,再次表示感谢!!!{:301_997:}
其他小白也可以学习一下(大神略过),实际例子:


小白求助,如何利用python提取word中部分段落并另存? - 『编程语言区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn


想起以前遇到的实际问题,根据实际困难对昨天的问题进一步进行引申,烦请各位大神再费心帮助,在此谢过!{:1_893:}{:301_1007:}{:1_893:}




问题是这样的:
一篇完整word里面有很多的章节(假设最多到三级标题),根据新word文件的目录提纲,提取原word对应章节的正文加入到新的word中(例子见下图)。



满足以下条件(文字的大小,空两格,是否居中......等样式暂不考虑):
1.新老word二级或三级标题名称一致,标题之下的内容完全一致(包括原word中包含的图片和表格),但是新word的标题顺序和级别发生了变化.
2.假设原word有很多个段落,很难采用查段落个数(例如P1 = doc.paragraphs)方式定义,想通过目录提纲内容里面的“关键字”来解决问题(因为标题名称是一致的,且唯一),即根据二三级标题顺序加入对应的正文(具体还是见上图)。

我可以按照关键字找到标题行,但是标题行之下的正文怎么加进去就不会了
#encoding:utf-8
from docx import Document
doc = Document('g:/python/0.docx')
content="\n".join()
a=content.split("\n")
b=[]
for i in a:
    if "自然的定义" in i:
      b.append(i)
doc1 = Document('g:/python/01.docx')
for i in b:
    doc1.add_paragraph(i)
doc1.save('g:/python/03.docx')



我测试用的word
https://time2hour.lanzouo.com/iAVvbyu47id


真心想学习python办公自动化,想用python-docx解决实际问题。:handshake

lc01t1watz9 发表于 2022-1-16 11:24

共同学习,大家辛苦了

woqunina 发表于 2022-1-16 11:45

lc01t1watz9 发表于 2022-1-16 11:24
共同学习,大家辛苦了

麻烦帮忙看看,这个怎么解决{:301_1003:}

hello_pj 发表于 2022-1-16 13:48

想完美还是比较难,图表的标题及相应的引用都要随之改变。

woqunina 发表于 2022-1-16 15:21

hello_pj 发表于 2022-1-16 13:48
想完美还是比较难,图表的标题及相应的引用都要随之改变。

图标的标题,可以先忽略,先解决核心问题,如果帮忙感激不尽

woqunina 发表于 2022-1-21 12:05

有没有大神,指导一下,谢谢
页: [1]
查看完整版本: 小白再求助,如何利用python根据word新目录加入对应的正文并保存?