易语言实现bilibili登陆源码

admin7年前 (2020-03-01)易语言源码12303
哈哈.发现大家都在B站学习.分享一个易语言实现登陆B站的源码.也就是易语言POST.因为B站加密了.所以要用到Js解密哦.第一次解密

.版本 2

.程序集 窗口程序集_启动窗口

.子程序 _按钮1_被单击

编辑框3.内容 = 登录 (编辑框1.内容, 编辑框2.内容)


.子程序 __启动窗口_创建完毕

V8.InitializeV8 ()

.子程序 密码, 文本型
.参数 pwd, 文本型
.参数 key, 文本型
.参数 hash, 文本型
.局部变量 返回密码, 文本型

返回密码 = V8.ExecJavaScriptV8 (#JS, “test('” + pwd + “','” + key + “','” + hash + “')”, , )
返回密码 = 文本_替换 (返回密码, , , , “=”, “%3D”, “+”, “%2B”, “/”, “%2F”, , , , )
返回 (返回密码)

.子程序 登录, 文本型
.参数 账号, 文本型
.参数 密码, 文本型
.局部变量 str, 文本型
.局部变量 hash, 文本型
.局部变量 key, 文本型
.局部变量 gt, 文本型
.局部变量 challenge, 文本型
.局部变量 提交key, 文本型
.局部变量 滑块, 文本型
.局部变量 challenge1, 文本型
.局部变量 validate, 文本型
.局部变量 data, 文本型
.局部变量 cookie, 文本型
'易语言学习吧分享www.eyy8.vip
str = 到文本 (网页_访问_对象 (“https://passport.bilibili.com/login?act=getkey&r=0.” + 文本_取随机数字 (16, ), , , , , , , , , , , , , , , , , , ))
hash = 文本_取出中间文本 (str, “hash” + #引号 + “:” + #引号, #引号, , )
key = 文本_取出中间文本 (str, “-----BEGIN PUBLIC KEY-----\n”, “\n-----END P”, , )

str = 到文本 (网页_访问_对象 (“https://passport.bilibili.com/web/captcha/combine?plat=6”, , , , , , , , , , , , , , , , , , ))
gt = 文本_取出中间文本 (str, “gt” + #引号 + “:” + #引号, #引号, , )
challenge = 文本_取出中间文本 (str, “challenge” + #引号 + “:” + #引号, #引号, , )
提交key = 文本_取出中间文本 (str, “key” + #引号 + “:” + #引号, #引号, , )


' -----我对接的滑块平台,自己找个平台可以对接登录


data = “captchaType=6&username=” + 账号 + “&password=” + 密码 (密码, key, hash) + “&keep=true&key=” + 提交key + “&goUrl=https%3A%2F%2Fwww.bilibili.com%2F&challenge=” + challenge1 + “&validate=” + validate + “&seccode=” + validate + “%7Cjordan”
str = 编码_URL解码 (到文本 (网页_访问_对象 (“https://passport.bilibili.com/web/login/v2”, 1, data, , cookie, , , , , , , , , , , , , , )), 真)
返回 (str)
复制代码
源码下载: