Files
daiyanan1992-qinglongtest/57box.py
daiyanan1992 286d49d565 Update 57box.py
update
2023-10-19 10:39:37 +08:00

210 lines
8.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""
@Qim出品 仅供学习交流请在下载后的24小时内完全删除 请勿将任何内容用于商业或非法目的,否则后果自负。
57Box_0.2
微信小程序 57Box 玩法:完成基础任务抽免费箱子
登录微信小程序授权手机号然后下载APP设置密码
export BOX_data=手机号@密码
多账号用'===='隔开 例 账号1====账号2
cron 0 8 * * *
"""
lottery = 1 # 抽鞋盒开关 1开启 0关闭
from tools.notify import send
import os
import time
import requests
# from dotenv import load_dotenv
#
# load_dotenv()
accounts = os.getenv("BOX_data")
# response = requests.get('https://gitee.com/shallow-a/qim9898/raw/master/label.txt').text
# print(response)
msg = ''
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('@')
mobile, password = values[0], values[1]
print(f"\n{'=' * 8}开始执行账号[{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['message']}")
token = response['data']['token']
print(f"{'=' * 12}开始每日任务{'=' * 12}")
for i in range(3):
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": "35",
"answer": ""
}
response = requests.post(url, headers=headers, data=data).json()
state = "看广告领矿石"
if response['errno'] == 999:
print(f"{state}---{response['message']}")
break
elif response['errno'] == 0:
print(f"{i + 1}{state}---{response['message']}")
time.sleep(5)
else:
print(f"{state}错误未知{response}")
break
time.sleep(3)
data = {
"m": "greatriver_lottery_operation",
"id": "26",
"answer": "669988"
}
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
time.sleep(3)
data = {
"m": "greatriver_lottery_operation",
"id": "30",
"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
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:
nickname = response['data']['nickname']
integral_str = response['data']['integral']
try:
integral = int(float(integral_str))
print(f"Name:{nickname}---矿石余额:{integral}")
msg += f"Name:{nickname}---矿石余额:{integral}\n"
except ValueError:
print(f"无效的integral值: {integral_str}")
else:
print(f"错误未知{response}")
break
if lottery == 1: # 开始抽奖
print(f"{'=' * 12}执行开鞋盒{'=' * 12}")
num = integral // 120
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": "303",
"paytype": "1",
"answer": "",
"num": 1
}
response = requests.post(url, headers=headers, data=params).json()
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']
for prize in all_prizes:
prize_title = prize['prize']['complete_prize_title']
prizes_count = prize['prizes_count']
print(f"{prize_title} 数量:x{prizes_count}")
msg += f"Name{nickname}--{prize_title} 数量:x{prizes_count}\n"
elif response['errno'] == 999:
print(f"{response['message']}")
break
else:
print(f"错误未知{response}")
break
print(msg)
send('57box通知',msg)