Mam mały skrypt, który sprawdza dużą listę domen dla ich rekordów MX, wszystko działa poprawnie, ale gdy skrypt znajdzie domenę bez rekordu, przeskoczenie do Następny.Dnspython: Ustawianie limitu czasu kwerendy/okresu ważności
Próbowałem dodając:
query.lifetime = 1.0
or
query.timeout = 1.0
ale to nie wydaje się nic zrobić. Czy ktoś wie, jak to ustawienie jest skonfigurowane?
Mój scenariusz znajduje się poniżej, dzięki za poświęcony czas.
import dns.resolver
from dns.exception import DNSException
import dns.query
import csv
domains = csv.reader(open('domains.csv', 'rU'))
output = open('output.txt', 'w')
for row in domains:
try:
domain = row[0]
query = dns.resolver.query(domain,'MX')
query.lifetime = 1.0
except DNSException:
print "nothing here"
for rdata in query:
print domain, " ", rdata.exchange, 'has preference', rdata.preference
output.writelines(domain)
output.writelines(",")
output.writelines(rdata.exchange.to_text())
output.writelines("\n")
Dziękuję bardzo !, Próbowałem twojej odpowiedzi z limitem czasu, ale wciąż miałem ten sam problem, ale używanie resolver.lifetime = 1.0 działało. –
Tak, nie jestem naprawdę pewien, na czym polega różnica (nigdy nie korzystałem z tej biblioteki), ale cieszę się, że znalazłeś odpowiedni atrybut. – kindall
Należy zauważyć, że 'timeout' jest tylko połową równania. Podobnie jak w oryginalnym przykładzie OP, należy również użyć terminu "czas życia". Zobacz http://comments.gmane.org/gmane.comp.python.dnspython.user/144 –