您的位置:首页 > 编程语言

代码笔记 | 动态解析dnspod实现花生壳一样的效果

2016-09-01 14:58 405 查看
#-*- coding:utf-8 -*-
import urllib2
import json
import urllib
import re
import time
def getip():
response = urllib2.urlopen('http://ip.911cha.com/')
test = response.read()
ip = re.findall(r"\\d+\\.\\d+\\.\\d+\\.\\d+",test)
return ip[0]
def changedns():
record_id = {}
record_id['168906903'] = '@'
record_id['168906977'] = 'qinglv'
record_id['168906947'] = 'www'
url = 'https://dnsapi.cn/Record.Ddns'
for dnsid , name in record_id.items():
data = {'login_token' : '12959,1aee3f6490907f32',
'domain_id' : '36744820',
'format' : 'json',
'record_id' : dnsid,
'sub_domain': name,
'record_line' : '默认',
'value' : ip
}
data = urllib.urlencode(data)
req = urllib2.Request(url , data)
res = urllib2.urlopen(req)
html = res.read()
print html
def dnsip():
url = 'https://dnsapi.cn/Record.Info'
data = {  'login_token' : '12959,1aee3f6490907f3',
'domain_id' : '36744820',
'format' : 'json',
'record_id' : '168906903'
}
data = urllib.urlencode(data)
req = urllib2.Request(url , data)
res = urllib2.urlopen(req)
test = res.read()
dnsip = re.findall(r"\\d+\\.\\d+\\.\\d+\\.\\d+",test)
return dnsip[0]
running = True
while running:
time.sleep(100)
ip = getip()
dns = dnsip()
if ip == dns:
print '本机ip无变化'
else:
changedns()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  代码笔记