1.需求
最近因为工作需要,需要给大量文本的脚注插入内容,我就写了个小程序。
2.实现
下面程序是我已经给所有脚注插入了两次文本“幸福”,给脚注2到4再插入文本“幸福”
from win32com import client
def add_text_to_specific_footnotes(filename, start_index, end_index, text_to_add):
word = client.Dispatch('Word.Application')
doc = word.Documents.Open(filename)
try:
# 遍历指定范围内的脚注索引
for footnote_index in range(start_index, end_index + 1):
try:
# 获取当前索引的脚注
target_footnote = doc.Footnotes.Item(footnote_index)
# 直接使用脚注的Range
r = target_footnote.Range
# 在脚注中添加文字
r.InsertAfter(text_to_add)
except Exception as e:
print(f"Error adding text to footnote {footnote_index}: {e}")
# 保存文档
doc.Save()
except Exception as e:
print(f"Error: {e}")
finally:
# 关闭文档和 Word 应用程序
doc.Close()
word.Quit()
# 示例:在第2到第4个脚注上添加文本
add_text_to_specific_footnotes(r'C:/Users/zhang/Desktop/521.docx', 2, 4, "幸福")
输出的文本插入脚注结果:
文本
脚注