gpt4 book ai didi

python - 我可以使用 Win32 COM 替换 word 文档中的文本吗?

转载 作者:太空狗 更新时间:2023-10-30 01:39:59 25 4
gpt4 key购买 nike

我必须在某些文档中执行大量替换,问题是,我希望能够自动执行该任务。一些文档包含通用字符串,如果可以自动化,这将非常有用。从我目前所读的内容来看,COM 可能是执行此操作的一种方式,但我不知道是否支持文本替换。我希望能够在 python 中执行此任务?是否可以?您能否发布一个代码片段来展示如何访问文档的文本?

谢谢!

最佳答案

到目前为止,我喜欢这些答案;
这是一个经过测试的示例(从 here 稍作修改)
替换 Word 文档中所有出现的字符串:

import win32com.client

def search_replace_all(word_file, find_str, replace_str):
''' replace all occurrences of `find_str` w/ `replace_str` in `word_file` '''
wdFindContinue = 1
wdReplaceAll = 2

# Dispatch() attempts to do a GetObject() before creating a new one.
# DispatchEx() just creates a new one.
app = win32com.client.DispatchEx("Word.Application")
app.Visible = 0
app.DisplayAlerts = 0
app.Documents.Open(word_file)

# expression.Execute(FindText, MatchCase, MatchWholeWord,
# MatchWildcards, MatchSoundsLike, MatchAllWordForms, Forward,
# Wrap, Format, ReplaceWith, Replace)
app.Selection.Find.Execute(find_str, False, False, False, False, False, \
True, wdFindContinue, False, replace_str, wdReplaceAll)
app.ActiveDocument.Close(SaveChanges=True)
app.Quit()

f = 'c:/path/to/my/word.doc'
search_replace_all(f, 'string_to_be_replaced', 'replacement_str')

关于python - 我可以使用 Win32 COM 替换 word 文档中的文本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1045628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com