批量检测微信小程序封禁状态的-Python-脚本
目录
批量检测微信小程序封禁状态的 Python 脚本
Python 脚本代码
import requests
import json
# 要检查的小程序 App ID 列表
app_ids = ['appid1', 'appid2', 'appid3'] # 请替换为实际的 App ID
# 定义 API URL 模板
api_url_template = 'https://down.ychengsnsm.com/xcx/checkxcx.php?appid={}'
# 获取小程序状态的函数
def get_app_status(app_id):
api_url = api_url_template.format(app_id) # 用 app_id 替换 URL 中的占位符
try:
# 发送 GET 请求
response = requests.get(api_url, timeout=30)
response.raise_for_status() # 如果请求失败会抛出异常
# 解析 JSON 响应
response_data = response.json()
# 判断返回的状态
if 'code' in response_data:
code = response_data['code']
if code == 1:
return f"{app_id}: 小程序状态正常"
elif code == 0:
return f"{app_id}: 小程序已被封禁"
else:
return f"{app_id}: 接口返回了未知的状态码 ({code})"
else:
return f"{app_id}: 接口返回的数据格式不符合预期"
except requests.exceptions.RequestException as e:
return f"{app_id}: 错误 - 请求失败: {str(e)}"
except json.JSONDecodeError:
return f"{app_id}: 错误 - 无效的 JSON 响应"
# 批量检查每个小程序的状态
for app_id in app_ids:
result = get_app_status(app_id)
print(result)
代码解析
API URL 模板
api_url_template
变量存储了 API 请求的 URL 模板。通过.format()
方法将每个小程序的app_id
填充到 URL 中。
get_app_status
函数get_app_status(app_id)
函数发送一个 HTTP GET 请求到 API 接口,获取小程序的封禁状态。requests.get
负责发送请求,并在接收到响应后通过.json()
方法解析 JSON 格式的数据。- 如果
code
字段存在,根据它的值来判断小程序的状态。返回不同的信息:code == 1
:小程序状态正常code == 0
:小程序已被封禁- 如果返回的
code
值不在预期范围内,输出“未知状态”信息。
- 如果请求出现错误,捕获异常并返回错误信息。
批量检测
- 使用一个循环遍历
app_ids
列表,调用get_app_status
检查每个小程序的状态,并打印结果。
- 使用一个循环遍历
使用说明
设置小程序 App ID
- 在
app_ids
列表中,填入你需要检查的小程序 App ID。
app_ids = ['wx1234567890abcdef', 'wxabcdef1234567890']
- 在
安装依赖
- 确保你的 Python 环境中已安装
requests
库。如果没有安装,可以使用以下命令安装:
pip install requests
- 确保你的 Python 环境中已安装
运行脚本
- 将修改后的 Python 脚本保存为
.py
文件(例如:check_xcx_status.py
),然后通过命令行运行:
python check_xcx_status.py
- 将修改后的 Python 脚本保存为
查看结果
运行后,控制台会显示每个小程序的封禁状态,例如:
wx1234567890abcdef: 小程序状态正常 wxabcdef1234567890: 小程序已被封禁
常见错误及解决方案
请求失败 (RequestException)
- 如果遇到请求失败,可能是网络问题、API 地址错误或服务器不可用。检查 API 地址是否正确,或者尝试访问其他网站以确认网络连接正常。
无效的 JSON 响应
- 如果接口返回的数据格式无效,可能是接口问题。你可以在脚本中添加一些调试信息,查看接口返回的原始内容,或者联系接口提供方确认返回格式。