最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

家里云通過dnspod、寶塔實現(xiàn)ddns

2022-05-22 19:44 作者:三九刀  | 我要投稿

大致原理:通過dnspod提供的api對比記錄值和本機ip,如果發(fā)現(xiàn)記錄值和本機ip不同則修改記錄值。

參考代碼(python):

# 編寫思路

# 1.先查詢有沒有記錄

# 2.如果沒有記錄就直接添加記錄(循環(huán))

# 3.如果有就判斷記錄值和現(xiàn)在ip地址是否一致

# 4.如果不一致就更改(循環(huán))


import requests

import json

import time

import re

import os


# api規(guī)范要求

headers = {

? ? 'UserAgent': 'DDNS/1.0.0(sanjiudao@qq.com)'

}


# 公共參數(shù)

login_token = ''

format = 'json'

lang = 'cn'

error_on_empty = 'no'

data = {

? ? 'login_token': login_token,

? ? 'format': format,

? ? 'lang': lang,

? ? 'error_on_empty': error_on_empty

}


def getIp(s):

? ? # 獲取本機ip

? ? if s == 'w':

? ? ? ? ipStr = os.popen("ipconfig").read()

? ? elif s == 'l':

? ? ? ? ipStr = os.popen("ifconfig").read()


? ? ips = re.findall(r"(([a-f0-9]{1,4}:){7}[a-f0-9]{1,4})", ipStr, re.I)

? ? return ips[0][0]


def recordProcess(jsonStr):

? ? global ip

? ? global recordId


? ? jsonDatas = json.loads(jsonStr)

? ? for jsonData in jsonDatas['records']:

? ? ? ? if jsonData['name'] == '@' and jsonData['type'] == 'AAAA':

? ? ? ? ? ? recordId = jsonData['id']

? ? ? ? ? ? if jsonData['value'] == ip:

? ? ? ? ? ? ? ? return 'ok'

? ? ? ? ? ? return 'different'

? ? return 'none'


recordId = ''

ip = getIp('l')

print(ip)


# 獲取域名記錄列表

# 接口參數(shù)

domain = ''

temp = {'domain': domain}

temp.update(data)


url = 'https://dnsapi.cn/Record.List'

r = requests.post(url, headers=headers, data=temp)

recordProcessResult = recordProcess(r.text)

print(recordProcessResult)

temp.clear()


if recordProcessResult == 'none':

? ? # 新增記錄

? ? temp = {

? ? ? ? 'domain': domain,

? ? ? ? 'record_type': 'AAAA',

? ? ? ? 'record_line': '默認(rèn)',

? ? ? ? 'value': ip,

? ? ? ? 'ttl': '600'

? ? ? ? }

? ? temp.update(data)

? ? url = 'https://dnsapi.cn/Record.Create'

? ? r = requests.post(url, headers=headers, data=temp)

? ? print(r.text)

elif recordProcessResult == 'different':

? ? # 修改記錄

? ? temp = {

? ? ? ? 'domain': domain,

? ? ? ? 'record_id': recordId,

? ? ? ? 'record_type': 'AAAA',

? ? ? ? 'record_line': '默認(rèn)',

? ? ? ? 'value': ip,

? ? ? ? 'ttl': '600'

? ? ? ? }

? ? temp.update(data)

? ? url = 'https://dnsapi.cn/Record.Modify'

? ? r = requests.post(url, headers=headers, data=temp)

? ? print(r.text)


temp.clear()

用寶塔的計劃任務(wù)重復(fù)執(zhí)行上面代碼即可實現(xiàn)

參考代碼記錄的是ipv6地址

login_token寫自己的token

domain寫自己的域名就可以跑了

因為只是自己用所以代碼很粗糙,可以根據(jù)自己需求修改

這里只是提供一種實現(xiàn)思路


文件下載連接:

ddns.py https://www.aliyundrive.com/s/cttqW2QZwGK 點擊鏈接保存,或者復(fù)制本段內(nèi)容,打開「阿里云盤」APP ,無需下載極速在線查看,視頻原畫倍速播放。

注:文件里的代碼與文章代碼有些許不同,主要是獲取本機ip的方法有異。

文件里通過訪問 6.ipw.cn 來獲取ip地址。

建議使用文件,因為python里縮進(jìn)也是語法的一部分,復(fù)制容易造成縮進(jìn)缺失


有問題請評論區(qū)留言,作為嗶哩嗶哩重度用戶,我會看的

家里云通過dnspod、寶塔實現(xiàn)ddns的評論 (共 條)

分享到微博請遵守國家法律
大丰市| 灌南县| 淅川县| 谢通门县| 永定县| 汤阴县| 凤城市| 武安市| 昔阳县| 常熟市| 东明县| 炉霍县| 鄂尔多斯市| 富源县| 浦江县| 苏尼特右旗| 环江| 乌鲁木齐县| 通江县| 聊城市| 兴城市| 扶风县| 泉州市| 琼中| 五指山市| 江陵县| 搜索| 双柏县| 县级市| 马边| 昭苏县| 兴山县| 屯昌县| 揭东县| 潜山县| 桃园市| 马边| 浦城县| SHOW| 汤原县| 曲麻莱县|