域名从 Vercel 转到 Cloudlare 以后自动创建了一大堆记录,总共有一百多条,都是没用的解析。由于 Cloudflare 的控制台没有批量删除解析的功能,一条一条删很麻烦。不过我们可以通过 Cloudflare 的 API 功能来实现批量删除解析,准确地讲是全部删除,目前还不能实现删除指定的解析。
创建 API 令牌
打开 用户 API 令牌 页面,点击 创建令牌
。
然后点击 编辑区域 DNS 后的 使用模板
按钮。
接着在 特定区域 右侧的下拉列表列表中选择你需要批量删除解析的域名。
翻到网页底部,点击 继续以显示摘要
。
点击 创建令牌
。
复制虚线框内的令牌,保存备用。
找到区域 ID
打开域名的概述页,下拉网页,在右下角找到 区域 ID。
执行批量删除
注意:脚本会删除指定域名的所有解析!
请将以下的 <API TOKEN>
替换为你之前创建的 API 令牌,将 <ZONE ID>
替换为域名的区域 ID。
Windows
如果你使用 Windows 系统,请使用以下 PowerShell 脚本。(此脚本来自 Cloudflare 论坛)
使用方法:
- 首先将脚本中的
<API TOKEN>
替换为你之前创建的 API 令牌,将<ZONE ID>
替换为域名的区域 ID。 - 然后右键脚本,点击
使用 PowerShell 运行
,等待执行完成即可。
macOS / Linux / BSD / Termux
如果你使用其他操作系统,请使用以下 Python 脚本。
使用方法:
首先安装 Python 环境和
requests
库(如果没有安装的话)。然后将脚本中的
<API TOKEN>
替换为你之前创建的 API 令牌,将<ZONE ID>
替换为域名的区域 ID。在脚本目录打开终端,并执行命令
python3 cf-del-records.py
,等待执行完成即可。
本文作者:Tony
本文链接: https://blog.iamsjy.com/2023/09/25/cloudflare-bulk-delete-dns-records/
文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。
评论