DDNS 通过阿里云API接口实现 DDNS 动态解析

↘锁芯ラ 提交于 2019-12-02 03:21:46

#!/usr/bin/env python
#coding=utf-8
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.request import CommonRequest
##################################
RR='@'     #你休要通过接口修改的解析主机记录值
Value='139.199.16.145'   #你需要更换的主机记录可以通过urllib等方法获取到本地ip地址 
RecordId=' ' #在添加解析时返回的值就是RecordId  如果不知道RecordId 可以通过阿里云控制台按下f12不懂请看下图
accessKeyIdi=''      #阿里云提供的认证服务
accessSecret=''    #阿里云提供的认证服务
#####################################
ient = AcsClient(accessKeyId, accessSecret, 'default') 
request = CommonRequest()
request.set_accept_format('json')
request.set_domain('alidns.aliyuncs.com')
request.set_method('POST')
request.set_protocol_type('https') # https | http
request.set_version('2015-01-09')
request.set_action_name('UpdateDomainRecord')

request.add_query_param('RecordId', RecordId)
request.add_query_param('RR', RR)
request.add_query_param('Type', 'A')
request.add_query_param('Value', Value)

response = client.do_action(request)
# python2:  print(response) 
print(str(response, encoding = 'utf-8'))

 

获取RecordId

图一

图二

图三  :需要修改【记录值】或【主机记录】某一项后点击 =>确认才能够获取RecordId不然只返回错误页面()注意的时要在点击了图二后再按下【F12】不然会再调试栏中出现很内容无法正常分析

图四:点击确认后就能够通过调试栏目获取RecordId的页面然后点击如图上的地址

图5: 这样RecordId就能轻松获取了

将内容跳入python 代码中将代码放在会ddns的主机上这样就可以实现ddns

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!