【树莓派】python3脚本 自动上报ip到万网域名解析

发布时间:2025-11-11 点击:6
依赖:
树莓派3b 万网域名(需要申请apikey)
python3 模块:
requests aliyun-python-sdk-core-v3 aliyun-python-sdk-alidns
脚本如下:
import requests import json from aliyunsdkcore.client import acsclient from aliyunsdkcore.acs_exception.exceptions import clientexception from aliyunsdkcore.acs_exception.exceptions import serverexception from aliyunsdkalidns.request.v20150109 import updatedomainrecordrequest, describedomainrecordinforequest domain = \\\’*.com\\\’ rid = \\\’该域名的rid\\\’ client = acsclient( "appkey", "appsecret", "cn-hangzhou" ) def ip(): #自己写的获取源 ip服务 r = requests.get(\\\’http://*.*.com/get/ip\\\’) if r.status_code == 200: return r.text else: return none def update_record(cip, old): update_pi(cip) req = updatedomainrecordrequest.updatedomainrecordrequest() req.set_recordid(rid) req.set_rr(old[\\\’rr\\\’]) req.set_type(old[\\\’type\\\’]) req.set_value(cip) resp = client.do_action_with_exception(req) print(resp) return true def update_pi(cip): postdata = {\\\’ip\\\’: ip} #自己写的记录ip变化的web服务 r = requests.post(\\\’http://*.*.com/pi/ip\\\’, data=postdata) return r.text == \\\’ok\\\’ def connect_dns(): cip = ip() if not cip: return false req = describedomainrecordinforequest.describedomainrecordinforequest() req.set_recordid(rid) resp = client.do_action_with_exception(req).decode(\\\’utf-8\\\’) old = json.loads(resp) if cip == old[\\\’value\\\’]: return true else: return update_record(cip, old) if __name__ == \\\’__main__\\\’: connect_dns()
然后放置在crontab 每半个小时执行一次,用来自动检测和更新

企业应用的虚拟主机要多少钱
网站经常性打开错误空间俩三天可以打开俩三天又打不开
企业邮箱被限制发件怎么解决
域名一般选哪个?域名是怎样挑选的?
这是怎么回事这个域名是在西维数码备过案吗
1号升级问题-云服务器问题
请问下如果要做全站是不是做了之后就不能开启百度云加速
微商城小程序运营指南