From 3f4a773d0676bdcaddffec9b88dc04e9ee057f63 Mon Sep 17 00:00:00 2001 From: To be rich <33859558+Huansheng1@users.noreply.github.com> Date: Sat, 2 Dec 2023 15:14:34 +0800 Subject: [PATCH] Delete 57Box.py --- 57Box.py | 297 ------------------------------------------------------- 1 file changed, 297 deletions(-) delete mode 100644 57Box.py diff --git a/57Box.py b/57Box.py deleted file mode 100644 index 65dcf8b..0000000 --- a/57Box.py +++ /dev/null @@ -1,297 +0,0 @@ -""" -57Box 1.10 -仅供学习交流,请在下载后的24小时内完全删除 请勿将任何内容用于商业或非法目的,否则后果自负。 -Author By Qim肖恩 -Updated By Huansheng -更新说明:修复sign接口问题 -玩法: -微信小程序 57Box 玩法:完成基础任务抽免费箱子 -登录微信小程序授权手机号然后下载APP设置密码 -export BOX_data=手机号@密码 -多账号用'===='隔开 例 账号1====账号2 -cron: 0 8 * * * -""" - -import urllib3 - -urllib3.disable_warnings() -lottery = 1 # 抽鞋盒开关 1开启 0关闭 -enabledTaskAndLottery = True -# 盲盒需要的矿石数量 -lotteryBoxPrize = 80 -# 进群密码 -joinGroupPassword = "123456" -import os -import time -import requests -import datetime -import hashlib - - -def getSign(userId): - def getDate(): - e = datetime.datetime.now() - a = e.year - t = e.month - l = e.day - n = e.weekday() - o = e.hour - i = e.minute - s = e.second - c = int(e.timestamp()) - r = str(e) - return { - "year": a, - "month": t, - "date": l, - "hours": o, - "minute": i, - "second": s, - "day": n, - "timeStamp": c, - "dateDateTime": r, - "dates": r.split(" ")[0].replace("/", "-"), - } - - s = getDate() - c = s["year"] - r = s["month"] - u = s["date"] - d = s["hours"] - m = s["minute"] - v = str(c) + "-" + str(r) + "-" + str(u) + " " + str(d) + ":" + str(m) - currentTime = int(datetime.datetime.strptime(v, "%Y-%m-%d %H:%M").timestamp()) - return hashlib.md5((str(currentTime) + userId + "box57").encode()).hexdigest() - - -# from dotenv import load_dotenv -# -# load_dotenv() -accounts = os.getenv("BOX_data") -print( - "原作者肖恩公告:" + requests.get("http://1.94.61.34:50/index.txt").content.decode("utf-8") -) -if accounts is None: - print("你没有填入BOX_data,咋运行?") - exit() -accounts_list = accounts.split("====") -num_of_accounts = len(accounts_list) -print(f"获取到 {num_of_accounts} 个账号") -for i, account in enumerate(accounts_list, start=1): - values = account.split("@") - if len(values) == 2: - mobile, password = values[0], values[1] - else: - print(f"\n{'=' * 8}第【{i}】个账号数据有误,请检查!该数据为:{account}") - continue - print(f"\n{'=' * 8}开始执行第【{i}】个账号[{mobile}]{'=' * 8}") - url = "https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=login&m=greatriver_lottery_operation" - headers = { - "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Html5Plus/1.0 (Immersed/47) uni-app", - } - - data = { - "mobile": mobile, - "password": password, - "password2": "", - "code": "", - "invite_uid": "0", - "source": "app", - } - - response = requests.post(url, headers=headers, data=data).json() - if response["errno"] == 0: - # print(f"{response['data']}") - print(f"{response['message']}") - token = response["data"]["token"] - print(f"{'=' * 12}获取账号信息{'=' * 12}") - url = f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=getuserinfo&&token={token}" - data = { - "m": "greatriver_lottery_operation", - "title": "", - } - response = requests.post(url, headers=headers, data=data).json() - if response["errno"] == 999: - print(f"{response['message']}") - elif response["errno"] == 0: - userId = response["data"]["id"] - money = response["data"]["money"] - nickname = response["data"]["nickname"] - integral_str = response["data"]["integral"] - try: - integral = int(float(integral_str)) - print(f"Name:{nickname}---矿石余额:{integral}---水晶余额:{money}") - except ValueError: - print(f"无效的integral值: {integral_str}") - else: - print(f"错误未知{response}") - break - if enabledTaskAndLottery: - print(f"{'=' * 12}开始每日任务{'=' * 12}") - sign = getSign(userId) - time.sleep(3) - # 进群密码 - answerText = joinGroupPassword - response = requests.get( - f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=uptaskinfo&m=greatriver_lottery_operation&radomstr={sign}&id=26&answer={answerText}&token={token}&source=app", - headers=headers, - ).json() - state = "进群密码" - if response["errno"] == 999: - print(f"{state}---{response['message']}") - elif response["errno"] == 0: - print(f"{state}---{response['message']}") - else: - print(f"{state}错误未知{response}") - break - time.sleep(3) - response = requests.get( - f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=uptaskinfo&m=greatriver_lottery_operation&radomstr={sign}&id=30&answer=%E7%94%A8%E4%BA%8E%E5%95%86%E5%9F%8E%E5%92%8C%E6%8A%98%E6%89%A3%E5%95%86%E5%9F%8E%E5%85%91%E6%8D%A2%E5%95%86%E5%93%81&token={token}&source=app", - headers=headers, - ).json() - state = "每日答题(二)" - if response["errno"] == 999: - print(f"{state}---{response['message']}") - elif response["errno"] == 0: - print(f"{state}---{response['message']}") - else: - print(f"{state}错误未知{response}") - break - time.sleep(3) - response = requests.get( - f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=uptaskinfo&m=greatriver_lottery_operation&radomstr={sign}&id=42&answer=%E9%80%9A%E8%BF%87%E5%BC%80%E7%9B%92%E8%8E%B7%E5%BE%97%E6%AF%8F1000%E8%83%BD%E9%87%8F%E7%9F%B3%E5%8F%AF%E4%BB%A5%E5%85%91%E6%8D%A21%E6%B0%B4%E6%99%B6&token={token}&source=app", - headers=headers, - ).json() - state = "每日答题领福利(一)" - if response["errno"] == 999: - print(f"{state}---{response['message']}") - elif response["errno"] == 0: - print(f"{state}---{response['message']}") - else: - print(f"{state}错误未知{response}") - break - print(f"{'=' * 12}获取账号信息{'=' * 12}") - url = f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=getuserinfo&&token={token}" - data = { - "m": "greatriver_lottery_operation", - "title": "", - } - response = requests.post(url, headers=headers, data=data).json() - if response["errno"] == 999: - print(f"{response['message']}") - elif response["errno"] == 0: - # print("response:", response) - money = response["data"]["money"] - nickname = response["data"]["nickname"] - integral_str = response["data"]["integral"] - try: - integral = int(float(integral_str)) - print(f"Name:{nickname}---矿石余额:{integral}---水晶余额:{money}") - except ValueError: - print(f"无效的integral值: {integral_str}") - else: - print(f"错误未知{response}") - break - if lottery == 1: # 开始抽奖 - print(f"{'=' * 12}执行开鞋盒{'=' * 12}") - num = integral // lotteryBoxPrize - for i in range(num): - url = "https://www.57box.cn/app/index.php" - params = { - "i": "2", - "t": "0", - "v": "1", - "from": "wxapp", - "c": "entry", - "a": "wxapp", - "do": "openthebox", - "token": token, - "m": "greatriver_lottery_operation", - "box_id": "586", - "paytype": "1", - "answer": "", - "num": 1, - } - res = requests.post(url, headers=headers, data=params) - response = res.json() - if len(response["data"]["prizes_data"]): - print( - f"第{str(i)}次开盲盒结果:", - response["message"], - response["data"]["prizes_data"][0]["complete_prize_title"], - ) - else: - print(f"第{str(i)}次开盲盒结果:", response["data"]["message"]) - if response["errno"] == 0: - complete_prize_title = response["data"]["prizes_data"][0][ - "complete_prize_title" - ] - prize_market_price = response["data"]["prizes_data"][0][ - "prize_market_price" - ] - print( - f"{response['message']}---{complete_prize_title} 市场价:{prize_market_price}" - ) - elif response["errno"] == 999: - print(f"{response['message']}") - else: - print(f"错误未知{response}") - break - print(f"开盲盒操作执行完毕") - if num >= 1: - url = f"https://www.57box.cn/app/index.php?i=2&t=0&v=1&from=wxapp&c=entry&a=wxapp&do=uptaskinfo&&token={token}" - data = { - "m": "greatriver_lottery_operation", - "id": "39", - "answer": "", - } - response = requests.post(url, headers=headers, data=data).json() - state = "开盒看视频领矿石" - if response["errno"] == 999: - print(f"{state}---{response['message']}") - elif response["errno"] == 0: - print(f"{state}---{response['message']}") - else: - print(f"{state}错误未知{response}") - break - else: - print() - - elif lottery == 0: - print(f"{'=' * 12}不执行开鞋盒{'=' * 12}") - - # 查询奖品列表 - url = "https://www.57box.cn/app/index.php" - - params = { - "i": "2", - "t": "0", - "v": "1", - "from": "wxapp", - "c": "entry", - "a": "wxapp", - "do": "getmemberprizes", - "token": token, - "m": "greatriver_lottery_operation", - "page": "0", - "type": "1", - "prize_level": "1", - } - - response = requests.get(url, headers=headers, params=params).json() - - all_prizes = response["data"] - accountTotalPrize = 0 - for prize in all_prizes: - prize_market_price = prize["prize"]["prize_market_price"] - prize_title = prize["prize"]["complete_prize_title"] - prizes_count = prize["prizes_count"] - print(f"{prize_title} 数量:x{prizes_count} 单价:{prize_market_price}") - accountTotalPrize = accountTotalPrize + float(prize_market_price) * int( - prizes_count - ) - print(f"奖品总价:{accountTotalPrize}") - elif response["errno"] == 999: - print(f"{response['message']}") - else: - print(f"错误未知{response}")