这篇文章主要介绍了如何实现域名过期提前通知脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
#!/root/.virtualenvs/script/bin/python
#coding=utf-8
import re
import time, mechanize
import urllib2
import random
URL = 'http://whois.chinaz.com/'
def str_cut(str,startsep,endsep):
str1=str.split(startsep)[1]
str2=str1.split(endsep)[0]
return str2
br = mechanize.Browser()
br.set_handle_equiv(True)
br.set_handle_gzip(False)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(True)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
#br.set_debug_http(True)
#br.set_debug_redirects(True)
#br.set_debug_responses(True)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.
1')]
domain_list = [你的域名列表]
r = br.open(URL)
for index, item in enumerate(domain_list):
try:
br.select_form(nr=0)
br.form['DomainName'] = item
br.submit()
contents = br.response().read()
if contents.find('<div id="whoisinfo" class="div_whois">')==-1:
print item + " " + "not found"
else:
contents=str_cut(contents,'<div id="whoisinfo" class="div_whois">','</div>')
contents=contents.replace('<br/>',',')[:-1]
a = re.split(',',contents)
for i in a:
m = re.match(r"过期时间", i)
if m:
print '域名 : %s, 过期时间 : %s' % (item, re.sub(r"年|月", '-', i[15:-3]).strip()[:10])
br.back()
except Exception,e:
print Exception,":",e
time.sleep(1.27*random.randint(4, 12))
感谢你能够认真阅读完这篇文章,希望小编分享的“如何实现域名过期提前通知脚本”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/gaosh/blog/4638886