57 lines
1.4 KiB
Python
57 lines
1.4 KiB
Python
import requests
|
|
import json
|
|
#import logging
|
|
|
|
# logging.basicConfig()
|
|
# logging.getLogger().setLevel(logging.DEBUG)
|
|
|
|
# requests_log = logging.getLogger("requests.packages.urllib3")
|
|
# requests_log.setLevel(logging.DEBUG)
|
|
# requests_log.propagate = True
|
|
|
|
ip = requests.get("http://api.ipify.org")
|
|
|
|
print(ip.text)
|
|
|
|
|
|
|
|
zoneId = "b353396aee0b38123ecb538fa582e245"
|
|
apiToken = "7C8TjQjKPJLywGYI5172jE6BUeZgvidXCnMn6V8f"
|
|
#apiKey = "58ec6020b9886fd8e30275b55ddc8b3c79bea"
|
|
#apiEmail = "christoph.califice@hotmail.com"
|
|
|
|
url_verify = f"https://api.cloudflare.com/client/v4/user/tokens/verify"
|
|
url_getEntries = f"https://api.cloudflare.com/client/v4/zones/{zoneId}/dns_records"
|
|
url_updateEntry = f"https://api.cloudflare.com/client/v4/zones/{zoneId}/dns_records/"
|
|
reqHeaders = {
|
|
"Authorization": "Bearer " + apiToken,
|
|
#"X-Auth-Email": apiEmail,
|
|
#"X-Auth-Key": apiKey
|
|
}
|
|
|
|
|
|
req = requests.get(url_getEntries, headers=reqHeaders)
|
|
|
|
|
|
|
|
entriesJson = json.loads(req.text)
|
|
|
|
print(entriesJson)
|
|
|
|
|
|
for entry in entriesJson["result"]:
|
|
if(entry["type"] == "A" and entry["name"] == "files.sereiaguardia.com"):
|
|
id = entry["id"]
|
|
name = entry["name"]
|
|
|
|
data = {
|
|
"content": f"{ip.text}",
|
|
"name": f"{name}",
|
|
"ttl": 1
|
|
}
|
|
|
|
print(data)
|
|
|
|
resp = requests.patch(url_updateEntry + id, json=data, headers=reqHeaders)
|
|
print(resp.text)
|