声明
本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包 内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!侵权通过头像私信或名字简介叫我删除博客谢谢。
部分python代码
@app.route('/solve_captcha', methods=['POST'])
def api_solve_captcha():
"""
POST 接口,接收 JSON:
{
}
"""
data = request.get_json(force=True) or {}
token = data.get('token', '')
group_id = data.get('groupId', '')
uid = data.get('uid', '')
if not token or not group_id or not uid:
return jsonify({"code": 400, "message": "缺少必要参数: token, groupId, uid", "success": False, "data": None})
local_storage = build_local_storage(token, group_id, uid)
try:
page = init_browser()
page.get(TARGET_URL)
page.wait(2, 4)
inject_env(page, local_storage, '')
page.wait(2, 4)
page.get(TARGET_URL)
page.wait(2, 4)
result = solve_captcha(page)
cookies_dict = {}
cookies_raw = page.run_js("return document.cookie")
if cookies_raw:
for c in cookies_raw.split('; '):
if '=' in c:
k, v = c.split('=', 1)
cookies_dict[k] = v
local_storage_dict = page.run_js("""
let data = {};
for (let i = 0; i < localStorage.length; i++) {
let key = localStorage.key(i);
data[key] = localStorage.getItem(key);
}
return data;
""")
response_data = {
"code": 200 if result["success"] else 500,
"message": result["message"],
"success": result["success"],
"data": {
"cookies": cookies_dict,
"localStorage": local_storage_dict
}
}
except Exception as e:
response_data = {"code": 500, "message": str(e), "success": False, "data": None}
finally:
try:
page.quit()
except Exception:
pass
return jsonify(response_data)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000, debug=False)
结果
