Python:检查MX记录中的域列表是否继续运行,然后停止,除非我按Ctrl + C?

时间:2017-07-05 15:43:54

标签: python dnspython

我有一个域的Excel电子表格,我需要检查有效的MX记录。它运行前10行,然后暂停,然后再次运行接下来的10行,然后暂停,然后运行接下来的41行,然后暂停,所以没有真正的模式对我有意义。

我是否需要告诉它“嘿,如果你在x秒内没有找到mx记录,继续前进”,还是有更好的办法完全运行这段代码?

import pandas as pd
import dns.resolver

def getListOfDomains():

    data_df= pd.read_excel('check.xlsx') #todo: mainRun passes name of file into run
    df = pd.DataFrame(data_df)
    result= df.drop_duplicates(subset=['domain'])
    for index, row in df.iterrows():
        TryString= str(row['domain'])
         try:
            check= dns.resolver.query(TryString, 'MX')
            print check.response
        except:
            print "No MX here"

1 个答案:

答案 0 :(得分:0)

  

<强>问题;我是否需要告诉它&#34; ... x秒,继续前进&#34;,...

无法保证dns.resolver.query(...立即返回。
暂停是等待回复的正常行为

  

评论:...我怎么能......如果在x秒内没有收到回复,请继续?

阅读此SO答案: Dnspython: Setting query timeout/lifetime