Wie löste ich einen SRV -Datensatz in Python auf?
-
19-09-2019 - |
Frage
Etwas, das nicht auf native Bibliotheken beruht, wäre besser.
Lösung
Sie können die DNSPython -Bibliothek ausprobieren:
Andere Tipps
verdrehte hat eine ausgezeichnete Implementierung mit reiner Python, siehe Twisted.names Quellen (vor allem dns.py). Wenn Sie nicht den gesamten Code verwenden können, können Sie möglicherweise ihre extrahieren und erneut verwenden Record_SRV
Klasse aus dieser Datei.
Verwendung Pydns:
import DNS
DNS.ParseResolvConf()
srv_req = DNS.Request(qtype = 'srv')
srv_result = srv_req.req('_ldap._tcp.example.org')
for result in srv_result.answers:
if result['typename'] == 'SRV':
print result['data']
Verwendung dnspython:
>>> import dns.resolver
>>> domain='jabberzac.org'
>>> srvInfo = {}
>>> srv_records=dns.resolver.query('_xmpp-client._tcp.'+domain, 'SRV')
>>> for srv in srv_records:
... srvInfo['weight'] = srv.weight
... srvInfo['host'] = str(srv.target).rstrip('.')
... srvInfo['priority'] = srv.priority
... srvInfo['port'] = srv.port
...
>>> print srvInfo
{'priority': 0, 'host': 'xmpp.jabberzac.org', 'port': 5222, 'weight': 0}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow