获取 API Token
- 登录 Cloudflare,转到 My Profile > API Tokens
- 创建一个具有 Workers Scripts:Edit 权限的 API Token
API 信息:
- 替换 API_TOKEN 和 ACCOUNT_ID 为你的实际值。
-  ACCOUNT_ID 可从 Cloudflare 管理面板的 Overview 页面找到
脚本运行:
- 将你想保留的 Worker 脚本名称填入列表
- 例如 [“worker1”, “important-worker”]
- 执行脚本后,非排除的 Worker 脚本会被自动删除,保留你指定的脚本
import requests
# 配置 API 信息
API_TOKEN = "你的_API_TOKEN"
ACCOUNT_ID = "你的_ACCOUNT_ID"
# 要排除的 Worker 脚本名称列表
EXCLUDE_WORKERS = ["worker1", "worker2"] # 替换为你不想删除的脚本名
# 请求头
headers = {
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
}
# 获取所有 Worker 脚本
response = requests.get(
f"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/workers/scripts",
headers=headers
)
if response.status_code != 200:
print(f"Failed to fetch scripts: {response.text}")
exit()
# 解析返回的脚本列表
scripts = response.json().get("result", [])
# 遍历脚本并删除非排除项
for script in scripts:
script_name = script["id"]
if script_name not in EXCLUDE_WORKERS:
delete_response = requests.delete(
f"https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/workers/scripts/{script_name}",
headers=headers
)
if delete_response.status_code == 200:
print(f"Deleted: {script_name}")
else:
print(f"Failed to delete: {script_name}, {delete_response.text}")
else:
print(f"Skipped: {script_name}")