python如何提取word文档某个段落所有内容(包括段落、表格、图片一并提取)

这里写自定义目录标题


原版链接:
https://blog.csdn.net/weixin_53366160/article/details/125921523
实现方法:找到所需文档用的起始光标和结束光标,然后进行复制即可。
浅说一下这里:

用代码 search_range.Find.Execute(FindText=“标题一”)查找到标题一
再用search_range.Select()选取标题一
最后 word.Selection.MoveLeft()光标左移
start = word.Selection.Start.numerator找到位置

# 光标start的查找
# 赋值对象
search_range = doc.Content
# 查找内容
search_range.Find.Execute(FindText="标题一")
# 选中查找到的内容
search_range.Select()
# 光标左移
word.Selection.MoveLeft()
# 将光标位置赋予start
start = word.Selection.Start.numerator

全部代码如下:

import win32com.client as win32
from win32com.client import constants
import os
# 打开word应用程序
word = win32.gencache.EnsureDispatch('Word.Application')
# 是否可视化
word.Visible = 0
# 源文件路径
file_path = r'D:/源文件/A.docx'
# 打开
doc = word.Documents.Open(file_path)
# 光标start的查找
# 赋值对象
search_range = doc.Content
# 查找内容
search_range.Find.Execute(FindText="标题一")
# 选中查找到的内容
search_range.Select()
# 光标左移
word.Selection.MoveLeft()
# 将光标位置赋予start
start = word.Selection.Start.numerator
print(start)
 
# 光标end的查找  同上
search_range = doc.Content
search_range.Find.Execute(FindText="标题二")
search_range.Select()
word.Selection.MoveLeft()
end = word.Selection.Start.numerator
print(end)
 
# 选取光标start到光标end的内容
doc.Range(start, end).Select()
# 复制
word.Selection.Copy()
# 粘贴的目标文件
doc_new = word.Documents.Open('D:/目标文件/B.docx')
# 粘贴
doc_new.Application.ActiveDocument.Range().Paste()
# 关闭两个文件
doc_new.Close()
doc.Close()
  • 1
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值