python 指令碼監控url返回碼並郵件報警
阿新 • • 發佈:2018-12-18
#coding=utf-8 import requests import smtplib from smtplib import SMTP_SSL from email.mime.text import MIMEText #定義一個發郵件函式 def mail(sub,content): mailto_list=["[email protected]"] mail_host="smtp.163.com" mail_uer="[email protected]" mail_pass="word2613182" message = MIMEText(content,_charset='utf-8') message['Subject'] = sub message['From']=mail_uer message['To'] = ";".join(mailto_list) try: #s = smtplib.SMTP() s = SMTP_SSL() s.connect(mail_host) s.login(mail_uer,mail_pass) s.sendmail(mail_uer, mailto_list, message.as_string()) s.close() return True except Exception as e: print (str(e)) return False def get_status(url): r = requests.get(url, allow_redirects = False) return r.status_code def main(): url_file = open("url.txt") for url in url_file.xreadlines(): url = url.strip().replace(" ", "").replace("\n", "").replace("\r\n", "") http_url = 'https://' + url status=get_status(http_url) if status!=200: mail('網頁返回碼',"'%s' 返回碼非200" %(http_url)) elif status==502: mail('網頁返回碼',"'%s' 返回碼502" %(http_url)) if __name__=="__main__": main();