本帖最后由 佚名RJ 于 2023-6-15 11:04 编辑
写在前面
玩3楼的想必大家都被各版块签到所苦恼吧!今天分享的一键自动签到工具及源码就能快速解决你的问题啦!如有违规,请直接删帖。
软件介绍
葫芦侠3楼使用key一键自动签到的工具及源码,注释源码中的第31行,使用第32行并将_key 填入,可云函数!
一键自动签到工具做了2秒延时,不建议太快,不然很容易签到异常!工具支持隐藏版块签到,目前共45个版块!
使用说明
在葫芦侠3楼输入用户名和密码然后去打开抓包工具后再回到葫芦侠再点击登录,登录成功后从抓包数据响应返回的用户信息中找_key 字段输入到软件中即可!
使用需特别注意: 手机端退出账号再重新登录后_key 会发生变化失效,抓包且挂云函数后手机端请勿退出账号!
实测截图
动态sign
生成方法:
cat_id+版块号+time+时间戳取值+fa1c28a5b62e79c3e63d9030b6142e4b MD5后得动态sign
举例说明:
cat_id1time1683352250925fa1c28a5b62e79c3e63d9030b6142e4b MD5后得动态sign 30de847e271b50b342ae95fab5cdc4e4
工具及源码
重要提醒:注释第31行,使用第32行并将_key填入,可挂云函数使用!若转载或改进等请注明出处,谢谢!
很简单的一个工具,代码写的也不是很好,很多异常处理都没有加。若转载或改进等请注明出处,谢谢!
[电脑端]葫芦侠三楼一键签到V2.0:https://www.123pan.com/s/CPO7Vv-1W9r3.html 提取码:0000
[手机端]葫芦侠三楼一键签到V1.4: 也有,不符合版规,不分享!
[Python] 纯文本查看 复制代码 # -*- coding: UTF-8 -*-
"""
* @脚本作者: 佚名RJ
* @创建时间: 2023/06/15 10:14
* @目标地址:
* @软件版本: V2.0
* @脚本用途: 葫芦侠三楼使用_key一键签到的脚本
* @使用说明: 手机抓包获取葫芦侠三楼账号登录的_key参数,运行此脚本填入即可!
* @其它说明: 注释第31行,使用第32行并将_key填入,可挂云函数使用。
"""
import requests
import time
import hashlib
import os
# MD5加密
def md5(param):
m = hashlib.md5()
b = param.encode(encoding='utf-8')
m.update(b)
passwd_md5 = m.hexdigest()
return passwd_md5
# 签到函数
def signin():
# _key参数抓登录包获取
_key = input("请输入抓包账号响应获取的_key:")
# _key = ""
print("============================开始签到请耐心等待============================")
number = 0 # 成功计数
continueDays = 0 # 连续签到天数
experienceVal = 0 # 本次签到经验
catid = {1, 2, 3, 4, 6, 15, 16, 21, 22, 23, 29, 34, 43, 44, 45, 56, 57, 58, 60, 63, 67, 68, 69, 70, 71, 76, 77, 81,
82, 84, 90, 92, 94, 96, 98, 102, 105, 107, 108, 110, 111, 115, 119, 120, 121}
# 每个版块的ID,包含隐藏版块ID
# for i in range(1, 122):
for i in catid:
cat_id = str(i)
# print(cat_id)
# 获取时间戳
time_s = str(time.time()).split(".")[0] + str(time.time()).split(".")[1][0:3]
# print(time_s) # 1683335343675
# 无需device_code版本
url = f"http://floor.huluxia.com/user/signin/ANDROID/4.1.8?platform=2&gkey=000000&app_version=4.2.0.5&versioncode=20141475&market_id=floor_web&_key={_key}&phone_brand_type=OP&cat_id={cat_id}&time={time_s}"
# 使用split方法按照'&'字符分割URL
params = url.split('&')
# 遍历分割后的字符串列表,找到cat_id和time参数
cat_id1 = None
time1 = None
for param in params:
if 'cat_id' in param:
cat_id1 = param.split('=')[1]
elif 'time' in param:
time1 = param.split('=')[1]
# 将cat_id和time和不变的voice_code组合成一个字符串
sign = md5('cat_id' + cat_id1 + 'time' + time1 + 'fa1c28a5b62e79c3e63d9030b6142e4b')
# print("30de847e271b50b342ae95fab5cdc4e4")
# print(sign)
data = {
"sign": sign # 动态sign
}
headers = {
"Accept-Encoding": "identity",
"Host": "floor.huluxia.com",
'User-Agent': 'okhttp/3.8.1',
"Content-Type": "application/x-www-form-urlencoded",
"Content-Length": "37"
}
response_res = requests.post(url=url, headers=headers, data=data)
# 打印请求的url
# print(response_res.request.url)
# 打印请求的参数
# print(response_res.request.body)
# 打印请求后返回的结果
# print(response_res.json())
dic = response_res.json()
# 获取签到的状态,状态:0为失败,1为成功。
status = dic['status']
tt = "\t"
if status == 1:
continueDays = dic['continueDays'] # 连续签到天数
experienceVal = dic['experienceVal'] # 本次签到经验
number += 1 # 每次签到成功就+1,最后记总成功次数。
msg = f'版块ID为{cat_id}{tt}签到状态:成功{tt}获得{experienceVal}点经验/已连签{continueDays}天{tt}第{number}次签到成功!'
# print(msg)
else:
msg = f'版块ID为{cat_id}{tt}签到状态:失败{tt}你的_key已失效或此版块可能已经不存在!'
print(msg)
time.sleep(2) # 稍做延时,太快会异常。
# 获取结果:累计连续签到天数及本次签到共获得多少经验点数。
print(f"\n签到结果:此账号已连续签到{continueDays}天,此次签到共成功获{experienceVal * number}点经验!继续加油哦!")
input("签到已完成!请按回车键结束...")
# main函数
def main():
os.system("mode con cols=75 lines=40") # 设置打开控制台大小
print("============================原创作者:佚名RJ==============================")
print("============================工具使用及抓包教程============================")
print("在葫芦侠3楼输入用户名和密码然后去打开抓包工具后再回到葫芦侠再点击登录,登录")
print("成功后从抓包数据响应返回的用户信息中找_key字段输入到软件中即可!")
print("==============================使用需特别注意==============================")
print("===========手机端每次退出账号再重新登录后_key会失效发生变化哦!===========")
# 签到
signin()
# 主函数调用
if __name__ == '__main__':
main()
|