Webから見つけたものに基づいて、Python、ewsclient、およびsud-ewsを使用してEWSを介してExchange 2007でメールを検索しようとしています。次のコードが出てきました。
import ewsclient
import suds.client
import logging
from suds.transport.https import WindowsHttpAuthenticated
email = 'me@mycompany.com'
domain = 'webmail.mycompany.com'
username = r'mycompany\me'
password = 'Password'
transport = WindowsHttpAuthenticated(username=username,password=password)
client = suds.client.Client("https://%s/EWS/Services.wsdl" % domain,transport=transport,plugins=[ewsclient.AddService(),MyPlugin()])
mfrst = client.factory.create('ns1:ItemResponseShapeType')
mfrst.BaseShape = "IdOnly"
cvt = client.factory.create('ns1:ConstantValueType')
cvt._Value = "XXX"
cet = client.factory.create('ns1:ContainsExpressionType')
cet.Constant = cvt
cet._ContainmentComparison = "IgnoreCase"
cet._ContainmentMode = "Substring"
mrt = client.factory.create('ns1:RestrictionType')
mrt.SearchExpression = cet
fot = client.factory.create('ns1:FieldOrderType')
fot._Order = "Descending"
stor = client.factory.create('ns1:NonEmptyArrayOfFieldOrdersType')
stor.FieldOrder.append(fot)
mtdfit = client.factory.create('ns1:DistinguishedFolderIdType')
mtdfit._Id = "inbox"
gfrt = client.service.FindItem(mfrst,mrt,stor,mtdfit)
しかし、私が得たのは次のエラーです 。
readme ファイルでは、sud-ews呼び出し中にメソッドの属性を指定する機能が追加されたことがわかります -- '_'-prefixed paramsですが、その使用方法がわかりません。