python如何提取word文档两个关键字之间的内容然后再粘贴到word中(包括段落、表格、图片一并提取) |
您所在的位置:网站首页 › 如何提取图片中的表格信息内容 › python如何提取word文档两个关键字之间的内容然后再粘贴到word中(包括段落、表格、图片一并提取) |
需求是这样子的:假如有一个word文档,里面有几行行数据,包括内容、表格、图片。 现在我需要提取标题一下的所有内容,如下图(word截取下来的)所示: 其实还是很简单的就是复制标题一和标题二之间的内容,然后粘贴就好了。无非就类似于实现 Ctrl c Ctrl v功能。关键是我去网上找了好久没有很好的找到相关python操作word文档的代码,然后零零散散看了好多篇博客,才实现这个功能的。 原理:想办法把光标定位到标题一的左边,记录此时的位置;再想办法把光标定位到标题二的左边,记录此时的位置。 然后用: # 选取光标start到光标end的内容 doc.Range(start, end).Select() # 复制 word.Selection.Copy() # 粘贴的目标文件 doc_new = word.Documents.Open(file_path) # 粘贴 doc_new.Application.ActiveDocument.Range().Paste()就能复制标题一的所有内容。 如何确定光标位置(确定位置在我这次写代码花费最长的时间的了,找了好久没有找到相关的内容,然后不知道在那一篇博客中,粗略的说了一下,然后悟了,几下子就把所有的代码干掉): 先用这段代码确定位置,就能找到起始位置和末尾位置:start位置的查找 # 光标start的查找 # 赋值对象 search_range = doc.Content # 查找内容 search_range.Find.Execute(FindText="标题一") # 选中查找到的内容 search_range.Select() # 光标左移 word.Selection.MoveLeft() # 将光标位置赋予start start = word.Selection.Start.numerator浅说一下这里: 用代码 search_range.Find.Execute(FindText="标题一")查找到标题一 再用search_range.Select()选取标题一 最后 word.Selection.MoveLeft()光标左移 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()运行结果: |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |