COM
Поиск текста в Word фале на Python
Опубликовано polusok в 30.03.2011Мне надо было создать скрпит, чтобы вытягивал емейлы из вордовских файлов. Задача решена следующим образом:
import os, re, win32com.client
msword = win32com.client.Dispatch('Word.Application')
msword.Visible = 0
try:
path = "C:\\temp\\"
files = os.listdir(path)
files.reverse()
emailfile = open(path+'emaillist.txt', 'w')
i=0
for file in files:
file = "%s%s" % (path, file)
doc = msword.Documents.Open(file)
r=re.search('([\w\-\.]+@(\w[\w\-]+\.)+[\w\-]+)', doc.Content.Text)
if r is not None:
email = r.group(0)
emailfile.write(email+",\n")
i = i + 1
print ("["+str(i)+"] "+file+" DONE")
doc = msword.Documents.Close()
msword.Quit()
except RuntimeError as error:
msword.Quit()
print ("error = "+error)Интересует, можно ли было сделать проще?







