Python的WS-Discovery实现
项目描述
Python的WS-Discovery
这是Python 3的WS-Discovery实现。它允许您发现服务并发布可发现的服务。如果您需要Python 2支持,请使用此包的最新1.x版本。
基本用法
提供了一个简单的wsdiscover
命令行客户端来发现符合WS-Discovery规范的网络设备和系统。运行wsdiscover --help
以获取使用说明。
以下是如何在Python代码中使用该包的示例。以下代码首先发布一个服务,然后发现它
from wsdiscovery.discovery import ThreadedWSDiscovery as WSDiscovery
from wsdiscovery.publishing import ThreadedWSPublishing as WSPublishing
from wsdiscovery import QName, Scope
# Define type, scope & address of service
ttype1 = QName("http://www.onvif.org/ver10/device/wsdl", "Device")
scope1 = Scope("onvif://www.onvif.org/Model")
xAddr1 = "localhost:8080/abc"
# Publish the service
wsp = WSPublishing()
wsp.start()
wsp.publishService(types=[ttype1], scopes=[scope1], xAddrs=[xAddr1])
# Discover it (along with any other service out there)
wsd = WSDiscovery()
wsd.start()
services = wsd.searchServices()
for service in services:
print(service.getEPR() + ":" + service.getXAddrs()[0])
wsd.stop()
开发状态
这不是一个完整的、正确的WS-Discovery实现。它不会验证从网络接收到的数据。它可能会崩溃,可能包含安全漏洞。没有任何保证 - 请仔细测试以适应您的用例。
作者和维护者
原始版本由L.A. Fernando创建。
代码随后被Andrei Kopats分叉并维护。
Python2支持修复由Michael Leinartas完成。
Python3移植由Pieter Jordaan完成。
打包、主要重构和命令行客户端以及reStructuredText包文档由Petri Savolainen完成。
变更日志
2.0.0 (2020-04-16)
- 解耦了线程化网络和ws-discovery实现
- 重构了应用级别的发现和发布代码为它们自己的模块
- 重构了消息构建、序列化和反序列化
- 添加了新的
wspublish
命令行客户端用于发布服务 - 为
wsdiscover
命令行客户端添加了单播发现支持 - 将所有命名空间收集到一个模块中
- 改进了README示例
- 使用Sphinx的reStructuredText良好的文档
- 移除了Python 2支持代码
1.1.2 (2019-01-01)
- 重构和Python2修复
- 引入自动化的Travis测试
1.1.1 (2018-12-21)
- 修复打包问题
1.1.0 (2018-12-21)
- 添加了一个简单的命令行客户端(petri)
- 调试支持,包括消息捕获(petri)
- 修复了重构造成的破坏(petri)
- 简单的测试(petri)
1.0.0 (2018-12-18)
- 改进了打包(petri)
- 模块化与重构(petri)
- 更好的Python2支持(mleinart)
0.2 (2017-05-19)
- 首次发布 @pypi(petri)
项目详情
下载文件
下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。
源分布
WSDiscovery-2.0.0.tar.gz (23.5 kB 查看哈希值)
构建分布
WSDiscovery-2.0.0-py3-none-any.whl (31.3 kB 查看哈希值)
关闭
WSDiscovery-2.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b0f9c36a11f9a56905223915c33c295f4240a6a25de60b32b305cbe69202ee78 |
|
MD5 | 69370e4f0f86f40f635b606b80d8866c |
|
BLAKE2b-256 | e5aed9055527b2e49232bbcca175c091aee82a4ba27ee137e33cf9f2f21fb3cd |
关闭
WSDiscovery-2.0.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 749400746d077d38c560f6bf89043421974809f93d92ad109668b95e7690b4a6 |
|
MD5 | f9f5f400f2fd7e97355dfa5a9a0b0fe2 |
|
BLAKE2b-256 | 1aeda415d6e41e9d46a2c4cfc60906d928909886491e4a70252301b93382bfba |