Outlook COM
michael montagne
montagne at boora.com
Fri May 4 18:51:02 EDT 2001
I had this code running and now something has changed and I'm stuck.
I am getting this error message:
Traceback (most recent call last):
File "e:\python21\pythonwin\pywin\framework\scriptutils.py", line 301,
in RunScript
exec codeObject in __main__.__dict__
File "E:\Python21\GetRFIEmail.py", line 28, in ?
objemail=folder.Items(i)
AttributeError: _Items instance has no __call__ method
When I run this code:
import win32com, sys, string, win32api, traceback, re, urllib
import win32com.client.dynamic
from win32com.client import gencache
from win32com.client.gencache import EnsureDispatch
class myURLOpener(urllib.FancyURLopener):
def setpasswd(self, user, passwd):
self.__user = user
self.__passwd = passwd
def prompt_user_passwd(self, host, realm):
return self.__user, self.__passwd
gencache.EnsureModule('{00062FFF-0000-0000-C000-000000000046}',0,9,0)
strPrefix="e:\\mjm\\RFILogs\\"
#objOut = win32com.client.dynamic.Dispatch("Outlook.Application.9")
objOut=EnsureDispatch("Outlook.Application.9")
print objOut
objNamespace=objOut.GetNamespace("Mapi")
objNamespace.Logon()
folder=objNamespace.Folders.Item("Public Folders").Folders.Item("All Public
folders").Folders.Item("Proj").Folders.Item("98011 UC
Davis").Folders.Item("UCD RFI's")
cnt=folder.Items.Count
print cnt
i=1
while i <= 20:
print i
objemail=folder.Items(i)
strbody=objemail.body
strsubject=objemail.subject
print strsubject
ii=string.find(strbody,"http:")
if ii != -1:
strurl=strbody[ii:]
istart=string.find(strurl,"UNID")
iend=string.find(strurl,"?Opendocument")
strFileName=strurl[istart+5:iend]
urlopener = myURLOpener()
urlopener.setpasswd("consultant", "ae")
strOutFile=strPrefix + strFileName + ".html"
fp=urlopener.retrieve(strurl,strOutFile)
else:
print "No URL found:"
i= i+1
More information about the Python-list
mailing list