python sharepoint soap ntlm suds

¿cómo puedo usar Sharepoint(a través de soap?) de python?



ntlm suds (4)

Quiero usar Sharepoint con python (C-Python)

Alguien ha intentado esto antes ?


SharePoint expone varios servicios web que puede usar para consultar y actualizar datos.

No estoy seguro de qué herramientas de servicios web hay para Python, pero deberían poder construir proxies para estos servicios sin ningún problema.

Este artículo debería brindarle suficiente información para comenzar.

http://www.developer.com/tech/article.php/3104621


Para obtener el wsdl:

import sys # we use suds -> https://fedorahosted.org/suds from suds import WebFault from suds.client import * import urllib2 # my 2 url conf # url_sharepoint,url_NTLM_authproxy import myconfig as my # build url wsdl = ''_vti_bin/SiteData.asmx?WSDL'' url = ''/''.join([my.url_sharepoint,wsdl]) # we need a NTLM_auth_Proxy -> http://ntlmaps.sourceforge.net/ # follow instruction and get proxy running proxy_handler = urllib2.ProxyHandler({''http'': my.url_NTLM_authproxy }) opener = urllib2.build_opener(proxy_handler) client = SoapClient(url, {''opener'' : opener}) print client.wsdl

Problema principal (medio): el servidor sharepoint usa un NTLM-Auth [:-(] así que tuve que usar el NTLM-Auth-Proxy

Para Rob y Enzondio: ¡GRACIAS por sus consejos!



Sospecho que desde que se respondió esta pregunta, la biblioteca SUDS se ha actualizado para que se encargue de la autenticación requerida. Después de saltar a través de varios aros, encontré esto para hacer el truco:

from suds import WebFault from suds.client import * from suds.transport.https import WindowsHttpAuthenticated user = r''SERVER/user'' password = "yourpassword" url = "http://sharepointserver/_vti_bin/SiteData.asmx?WSDL" ntlm = WindowsHttpAuthenticated(username = user, password = password) client = Client(url, transport=ntlm)