MXレコードのドメインの大きなリストをチェックする小さなスクリプトがありますが、すべて正常に機能しますが、スクリプトでレコードのないドメインが見つかると、次のもの。Dnspython:クエリのタイムアウト/有効時間を設定する
私が追加しようとしている:
query.lifetime = 1.0
or
query.timeout = 1.0
が、これは何もしていないようです。誰でもこの設定がどのように設定されているか知っていますか
私のスクリプトは以下のとおりです。ありがとうございます。
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")
ありがとうございました!私はタイムアウトであなたの答えを試しましたが、同じ問題がありましたが、resolver.lifetime = 1.0を使用しました。 –
ええ、どういう違いがありますか(そのライブラリは決して使用されませんでしたが、あなたが正しい属性を見つけられてうれしいです)。 – kindall
'timeout'は方程式の半分に過ぎないことに注意してください。 OPの元の例のように、 'lifetime'も使われるべきです。 http://comments.gmane.org/gmane.comp.python.dnspython.user/144を参照してください。 –