From a73d24c571e344257a88cc6ca6cdead48a4594a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Fri, 8 Nov 2024 21:45:12 +0800 Subject: [PATCH] 'commit' --- BaiHu/Tools/DocxTuBiaoRead.py | 43 ++++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/BaiHu/Tools/DocxTuBiaoRead.py b/BaiHu/Tools/DocxTuBiaoRead.py index 7ffeaaa1..fa926ab5 100644 --- a/BaiHu/Tools/DocxTuBiaoRead.py +++ b/BaiHu/Tools/DocxTuBiaoRead.py @@ -13,27 +13,34 @@ docApp.DisplayAlerts = 0 doc = docApp.Documents.Open('c:/红河哈尼族彝族自治州人口变化及其对教育的影响20240419.docx') # 遍历文档中的所有内嵌形状 +# idx = 1 +# for inline_shape in doc.InlineShapes: +# if inline_shape.Type == win32com.client.constants.wdInlineShapeChart: # 检查是否为内嵌图表 +# shape = doc.InlineShapes(idx) +# # 获取图表的标题,此项目中图表没有标题 +# # print(shape.Chart.ChartTitle.Text) +# sheet = shape.Chart.ChartData.Workbook.Worksheets("Sheet1") +# # 行数 +# row_size = sheet.UsedRange.rows.Count +# # 列数 +# col_size = sheet.UsedRange.columns.Count +# # 遍历获取表格中的数据 +# for i in range(1, row_size + 1): +# for j in range(1, col_size + 1): +# print(sheet.Cells(i, j).Value, end=" ") +# print("") +# print("") +# # 下一个图表的索引号 +# idx = idx + 1 +# print(idx) +# 遍历文档中所有的文字段落,判断是不是以 图+数字开头 idx = 1 -for inline_shape in doc.InlineShapes: - if inline_shape.Type == win32com.client.constants.wdInlineShapeChart: # 检查是否为内嵌图表 - shape = doc.InlineShapes(idx) - # 获取图表的标题,此项目中图表没有标题 - # print(shape.Chart.ChartTitle.Text) - sheet = shape.Chart.ChartData.Workbook.Worksheets("Sheet1") - # 行数 - row_size = sheet.UsedRange.rows.Count - # 列数 - col_size = sheet.UsedRange.columns.Count - # 遍历获取表格中的数据 - for i in range(1, row_size + 1): - for j in range(1, col_size + 1): - print(sheet.Cells(i, j).Value, end=" ") - print("") - print("") - # 下一个图表的索引号 +for para in doc.Paragraphs: + x = para.Range.Text.strip().replace("图 ", "图").replace(" ", " ") + if x.startswith("图"): + print(x) idx = idx + 1 -print(idx) # 关闭文档和Word应用 doc.Close() docApp.Quit()