Python 调整脚本以从文本文件读取

Python 调整脚本以从文本文件读取,python,csv,Python,Csv,我有下面的脚本,我需要适应从文件读取,特别是我需要拉“域”和“预期响应”。目前,它们是手工编写的代码,因为我没有足够的技能来更有效地重构它 #!/usr/bin/python import dns.resolver from smtplib import SMTP import datetime debuglevel = 0 domain = 'exampledomain.co.uk' expected_responses = ['example.co.uk.', 'example2.co.

我有下面的脚本,我需要适应从文件读取,特别是我需要拉“域”和“预期响应”。目前,它们是手工编写的代码,因为我没有足够的技能来更有效地重构它

#!/usr/bin/python
import dns.resolver
from smtplib import SMTP
import datetime

debuglevel = 0

domain = 'exampledomain.co.uk'
expected_responses = ['example.co.uk.', 'example2.co.uk.']
for x in dns.resolver.query(domain, 'MX'):
        if x.to_text().split()[1] not in expected_responses:
                print "Unexpected MX record found!"
                smtp = SMTP()
                smtp.set_debuglevel(debuglevel)
                smtp.connect('localhost', 25)

                from_addr = "MX ERROR <MXERROR@example.net>"
                to_addr = "example@example.com"

                subj = "MX ERROR"
                date = datetime.datetime.now().strftime( "%d/%m/%Y %H:%M" )

                message_text = "Dearest colleagues\nSomething appears to be wrong with the MX records for example.co.uk\n\nDON'T PANIC!\n"

                msg = "From: %s\nTo: %s\nSubject: %s\nDate: %s\n\n%s" % ( from_addr, to_addr, subj, date, message_text )


                smtp.sendmail(from_addr, to_addr, msg)
                smtp.quit()
        else:
                print x.to_text().split()[1] + " example.uk MX records OK!"
#/usr/bin/python
导入dns.resolver
从smtplib导入SMTP
导入日期时间
调试级别=0
domain='exampledomain.co.uk'
预期的_响应=['example.co.uk.','example2.co.uk.]
对于dns.resolver.query(域“MX”)中的x:
如果x.to_text().split()[1]未出现在预期的_响应中:
打印“发现意外MX记录!”
smtp=smtp()
smtp.set_debuglevel(debuglevel)
smtp.connect('localhost',25)
from_addr=“MX错误”
地址=“example@example.com"
subc=“MX错误”
date=datetime.datetime.now().strftime(“%d/%m/%Y%H:%m”)
message\u text=“亲爱的同事们\n MX记录似乎有问题,例如.co.uk\n\n不要惊慌!\n”
msg=“From:%s\nTo:%s\n对象:%s\n日期:%s\n\n%s”%(From地址、to地址、主题、日期、消息文本)
smtp.sendmail(从地址到地址,消息)
smtp.quit()
其他:
打印x.to_text().split()[1]+“example.uk MX记录正常!”
我的第一个想法是使用一个.txt文件,但我不知道如何用我的python知识区分同一文件中的域和预期的_响应。我搜索并阅读了导入csv功能,这似乎是最好的选择,但我没有使用它的任何经验

有人能给我举个例子,说明我如何将导入csv应用到我的代码中吗

问候

克里斯

这可能更符合你的要求。使用*.ini文件似乎是配置文件的一种相当标准的做法