

今天有个小伙伴提了一个需求,需要精准统计word文档中的字数,就是word左下角显示的那个数值。(如下图)

小伙伴尝试直接使用“魔法指令”生成统计字数的指令,结果统计出来的数据是不准确的。“魔法指令”实际调用的是python-docx库,统计的是字符数,没有办法统计具体的字数(中文、英文等)


调用微软office官方接口的python库win32com 来实现数据统计,详细官方接口可以参考下面网址链接。
https://learn.microsoft.com/en-us/dotnet/api/microsoft.office.interop.word.words.count?view=word-pia
不过都AI时代了,还是让AI来干粗重活吧!

但是虽然是官方接口,这段代码统计出来的字数也是错误的,错得还有点离谱!

好吧,把问题扔回给AI,看看它怎么解释!

好吧!我再试试看!结果正确了!太给力了!!!


直接使用魔法指令,把代码喂给它生成指令,生成指令直接用,小伙伴也不用辛苦封装指令了!
import win32com.client as win32
def count_words_in_doc(file_path):
word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = False
doc = word.Documents.Open(file_path)
word_count = doc.BuiltInDocumentProperties("Number of Words").Value
doc.Close(False)
word.Quit()
return word_count