|
发表于 2025-7-29 21:11:15
|
显示全部楼层
河北省秦皇岛市
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | 百duCookies | 文本型 | |
互联网访问1. 初始化 ()按钮_获取二维码.禁止 = 假 按钮_检查登录.禁止 = 真 .局部变量 返回数据, 文本型 .局部变量 二维码URL, 文本型 .局部变量 扫码链接, 文本型 返回数据 = 互联网访问1. 取网页源码 ("https://passport.baidu.com/v2/api/?getqrcode&lp=pc" ) 如果真 (JSON解析 (返回数据, "sign", 签名 ) 且 JSON解析 (返回数据, "imgurl", 二维码URL ))  图片框1.图片 = 互联网访问1. 取图片 (二维码URL ) 标签_提示.标题 = "请使用百duAPP扫描二维码"  按钮_检查登录.禁止 = 假   时钟1.时钟周期 = 3000  信息框 ("获取二维码失败!", 0, "错误", ) _按钮_检查登录_被单击 () .局部变量 返回数据, 文本型 .局部变量 登录状态, 文本型 返回数据 = 互联网访问1. 取网页源码 ("https://passport.baidu.com/v2/api/?qrcodecheck&sign=" + 签名 ) JSON解析 (返回数据, "status", 登录状态 ) 判断 (登录状态 = "0" )  标签_提示.标题 = "等待扫码..."  判断 (登录状态 = "1" )  标签_提示.标题 = "已扫码,请确认登录"  判断 (登录状态 = "2" )  标签_提示.标题 = "登录成功!"  时钟1.时钟周期 = 0  按钮_检查登录.禁止 = 真   百duCookies = 互联网访问1. 取Cookies ("baidu.com" ) 调试输出 ("获取到的Cookies:", 百duCookies ) 写到文件 (取运行目录 () + "\baidu_cookies.txt", 到字节集 (百duCookies )) 信息框 ("Cookies已保存!", 0, "成功", ) 判断 (登录状态 = "3" )  标签_提示.标题 = "二维码已过期"  时钟1.时钟周期 = 0  按钮_获取二维码.禁止 = 假   标签_提示.标题 = "状态未知:" + 登录状态  |
JSON解析 | 逻辑型 | | |
JSON文本 | 文本型 | | | | 键名 | 文本型 | | | | 返回值 | 文本型 | | | | 变量名 | 类 型 | 静态 | 数组 | 备 注 | 开始位置 | 整数型 | | | 结束位置 | 整数型 | | |
开始位置 = 寻找文本 (JSON文本, """" + 键名 + """:", , 假) 如果真 (开始位置 = -1 ) 返回 (假) 开始位置 = 开始位置 + 取文本长度 (键名 ) + 3 结束位置 = 寻找文本 (JSON文本, ",", 开始位置, 假) 如果真 (结束位置 = -1 ) 结束位置 = 寻找文本 (JSON文本, " }", 开始位置, 假) 返回值 = 取文本中间 (JSON文本, 开始位置, 结束位置 - 开始位置 )返回值 = 子文本替换 (返回值, """", "", , , 真)返回 (真) 如果真 (百duCookies = "" ) 信息框 ("请先登录!", 0, "提示", ) 返回 ().局部变量 返回数据, 文本型 互联网访问1. 置Cookies ("baidu.com", 百duCookies )返回数据 = 互联网访问1. 取网页源码 ("https://www.baidu.com/" ) 如果真 (寻找文本 (返回数据, "我的账号", , 假) ≠ -1 ) 信息框 ("登录状态有效!", 0, "成功", ) 信息框 ("登录失效,请重新扫码", 0, "错误", )
补充内容 (2025-7-30 03:23):
获取二维码:
访问百du二维码生成接口获取二维码图片
同时获取唯一的sign签名用于后续状态检查
检查登录状态:
定时调用状态检查接口
... |
评分
-
查看全部评分
|