2010-03-17 5 views
1

J'ai plusieurs périphériques sur un réseau. J'essaye d'utiliser une bibliothèque pour découvrir la présence et l'itentity de ces dispositifs using le manuscrit de Python, les dispositifs ont tous un service de Web. Ma question est, existe-t-il des modules qui pourraient m'aider avec ce problème comme le seul module que j'ai trouvé est ws-discovery pour Python?Découverte de services Web en utilisant Python

Et si c'est le seul module, quelqu'un at-il un exemple de script Python utilisant ws-discovery?

Merci pour toute aide.

Répondre

1

Malheureusement, je n'ai jamais utilisé moi-même ws-découverte, mais il semble y avoir un projet Python qui implémente: http://code.google.com/p/python-ws-discovery/

De leur documentation est ici un court exemple sur la façon de l'utiliser:

wsd = WSDiscovery() 
wsd.start() 

ttype = QName("abc", "def") 

ttype1 = QName("namespace", "myTestService") 
scope1 = Scope("http://myscope") 
ttype2 = QName("namespace", "myOtherTestService_type1") 
scope2 = Scope("http://other_scope") 

xAddr = "localhost:8080/abc" 
wsd.publishService(types=[ttype], scopes=[scope2], xAddrs=[xAddr]) 

ret = wsd.searchServices() 

for service in ret: 
    print service.getEPR() + ":" + service.getXAddrs()[0] 

wsd.stop() 
+0

J'avais déjà utilisé ce code et je l'ai fait fonctionner, c'était quelque chose sur mon serveur. Vous utilisez 'service.getXAddrs() [0]' pour obtenir l'adresse x du premier service, etc. Merci d'avoir aidé de toute façon – chrissygormley

1

Êtes-vous lié à ws-discovery? Si ce n'est pas le cas, vous pouvez envisager le protocole Bonjour, alias ZeroConf et DNS-SD. Le protocole est relativement largement mis en œuvre. Je n'ai jamais utilisé python pour faire de la publicité ou de la découverte mais il y a un projet qui implémente une API: http://code.google.com/p/pybonjour/

Comme je l'ai dit, je n'ai aucune expérience directe avec ce projet et je le fais simplement remarquer comme une alternative à ws- Découverte.

Questions connexes