我想实现一个代码,通过它我可以列出网络上连接的 upnp 兼容媒体渲染器设备。我用谷歌搜索了这个并找到了以下代码扭曲的网站 https://twistedmatrix.com/documents/current/core/howto/udp.html
当我的机器上连接 2 个网络(以太网和 WiFi)时,它仅列出一个网络的设备。
code
from twisted.internet.protocol import DatagramProtocol
from twisted.internet import reactor
import re
class MulticastPingPong(DatagramProtocol):
XMLNS = "{urn:schemas-upnp-org:device-1-0}"
def startProtocol(self):
# Join the multicast address, so we can receive replies:
self.transport.joinGroup("239.255.255.250")
def datagramReceived(self, datagram, address):
if(re.search("USN:.*MediaRenderer", datagram, flags=re.IGNORECASE)):
# code to print friendly name
reactor.listenMulticast(1900, MulticastPingPong(), listenMultiple=True)
reactor.run()
如何搜索多个网络的设备?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)