Python UPnP/IGD 客户端实现?
我正在寻找 Python 中 UPnP 客户端的开源实现,更具体地说是它的 互联网网关设备 (IGD) 部分。
目前,我只能在 PyMediaServer、PyMedS,BRisa 或 Coherence。
我确信我可以使用这些代码库作为开始,但媒体服务器部分会引入不必要的复杂性。
那么您能推荐一个客户端 UPnP(希望还有 IGD)Python 库吗? 另一种方法是分派对 C 库的调用,例如 MiniUPnP,但我更喜欢纯 Python执行。
更新:关于 SSDP 和 UPnP 的有趣的相关讨论可以在 StackOverflow< /a>.
I am searching for an open-source implementation of an UPnP client in Python, and more specifically of its Internet Gateway Device (IGD) part.
For now, I have only been able to find UPnP Media Server implementations, in projects such as PyMediaServer, PyMedS, BRisa or Coherence.
I am sure I could use those code bases as a start, but the Media Server part will introduce unneeded complexity.
So can you recommend a client UPnP (and hopefully IGD) Python library? An alternative would be to dispatch calls to a C library such as MiniUPnP, but I would much prefer a pure Python implementation.
Update: an interesting, kind of related discussion of SSDP and UPnP is available on StackOverflow.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MiniUPnP 源代码包含使用 C 库作为扩展模块的 Python 示例代码(请参阅 testupnpigd.py ),我认为这是解决我的问题的正确方法。
理由:这不是我一直在寻找的纯Python解决方案,但是:
MiniUPnP source code contains a Python sample code using the C library as an extension module (see
testupnpigd.py
), which I consider as a proper solution to my problem.Rationale: this is not the pure Python solution I was looking for, but:
我认为你真的应该考虑一下 BRisa。 它最近成为一个纯 python UPnP 框架,而不仅仅专注于媒体服务器。
它提供了许多实用的模块和功能,供您构建和部署 UPnP 设备。
该项目还缺乏反馈:-)。 如果您愿意尝试 BRisa,我建议您使用最新的 svn 代码。
您还可以在 irc.freenode.org 上通过 #brisa 联系开发人员,我们要么在线,要么闲置。
I think you should really consider BRisa. It recently became a pure python UPnP Framework, not focused only on Media Server.
It provides lots of utilitary modules and functions for you to build and deploy your UPnP device.
The project also is lacking feedback :-). I suggest you to use the latest svn code, if you're willing to try BRisa.
You can also contact the developers on #brisa at irc.freenode.org, we're either online or idling.