1

ネットワーク上に複数のデバイスがあります。ライブラリを使用して、Python スクリプトを使用してこれらのデバイスの存在と実体を検出しようとしています。デバイスにはすべて Web サービスがあります。私の質問は、私が見つけた唯一のモジュールが Python の ws-discovery であるため、この問題を解決するのに役立つモジュールはありますか?

これが唯一のモジュールである場合、ws-discovery を使用した Python スクリプトの例はありますか?

助けてくれてありがとう。

4

2 に答える 2

1

残念ながら、私は ws-discovery を自分で使用したことはありませんが、それを実装する Python プロジェクトがあるようです: https://pypi.org/project/WSDiscovery/

彼らのドキュメントから、それを使用する方法の短い例を次に示します。

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()
于 2010-03-21T13:33:29.123 に答える
1

あなたは ws-discovery に縛られていますか? そうでない場合は、Bonjour プロトコル、別名 ZeroConf および DNS-SD を検討することをお勧めします。このプロトコルは比較的広く実装されています。広告や発見に Python を使用したことはありませんが、API を実装するプロジェクトがあります: http://code.google.com/p/pybonjour/

前述したように、私はこのプロジェクトを直接経験したことがなく、単に ws-discovery の代替手段として指摘しているだけです。

于 2010-03-25T07:06:22.200 に答える