Cloudflare 批量删除 DNS 解析

Cloudflare 批量删除 DNS 解析

创建 API 令牌

打开 用户 API 令牌 页面,点击 创建令牌step one

然后点击 编辑区域 DNS 后的 使用模板 按钮。 step one

接着在 特定区域 右侧的下拉列表列表中选择你需要批量删除解析的域名。 step one

翻到网页底部,点击 继续以显示摘要step one

点击 创建令牌step one

复制虚线框内的令牌,保存备用 step one

找到区域 ID

打开域名的概述页,下拉网页,在右下角找到 区域 ID。 step one

执行批量删除

注意:脚本会删除指定域名的所有解析!

请将以下的 替换为你之前创建的 API 令牌,将 替换为域名的区域 ID。

使用python 脚本 使用方法

  • 首先安装 Python 环境和 requests 库(如果没有安装的话)。
  • 然后将脚本中的 替换为你之前创建的 API 令牌,将 替换为域名的区域 ID。
  • 在脚本目录打开终端,并执行命令 python3 cf-del-records.py,等待执行完成即可。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import requests

API_TOKEN = ""
ZONE_ID = ""

baseUrl = f"https://api.cloudflare.com/client/v4/zones/{ZONE_ID}/dns_records"

headers = {
    'Authorization': f'Bearer {API_TOKEN}',
    'Content-Type': 'application/json'
}

listUrl = f"{baseUrl}?per_page=500"
print(listUrl)
response = requests.get(listUrl, headers=headers)
records = response.json()['result']

for record in records:
    name = record['name']
    content = record['content']

    print(f"Deleting {name} that points to {content}")

    deleteUrl = f"{baseUrl}/{record['id']}"
    requests.delete(deleteUrl, headers=headers)
    print(deleteUrl)

來源

0%