泡泡玛特云函数抓包 各种算法
泡泡玛特sign算法!
泡泡玛特云函数抓取视频教程加代码!
安卓pad/苹果ipad微信协议850最新版
可用泡泡玛特小程序接口不掉授权红包功能等等源码部署包!
…………………
import requests
import json
import time
import threading
import datetime
import random
import re
headers = {
'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Mobile Safari/537.36',
"Content-Type": "application/json"
}
def xintiao(wxid):
url = 'http://127.0.0.1:9999/api/Login/HeartBeat?wxid=' + str(wxid)
try:
resp = requests.post(url, headers=headers)
except:
pass # try:
else:
return resp.json()
def parse_data(txt_file):
with open(txt_file, 'r') as file:
data = file.read()
# 使用正则表达式匹配数据并提取
lines = data.strip().split('\n')
parsed_data = []
for match in lines:
parts = match.split('----')
parsed_data.append({
'UserName': parts[0],
'Password': parts[1],
'A16': parts[2]
})
return parsed_data
def group_by_user(parsed_data):
grouped_data = []
for item in parsed_data:
grouped_data.append({
'wxid': item['UserName'],
'Password': item['Password'],
'A16': item['A16']
})
return grouped_data
def fengeshuju():
txt_file = r'C:\Users\DELL\Desktop\111\A16-2.txt' # 替换为你的文件路径
parsed_data = parse_data(txt_file)
grouped_data = group_by_user(parsed_data)
print("共:" + str(len(grouped_data)) + "条数据")
return grouped_data
def Axy(UserName, Password, A16):
url = 'http://127.0.0.1:9999/api/Login/A16Data'
datad = {
"A16": A16,
"Password": Password,
"proxy": {
"proxyIp": "42.101.44.202:2018",
"proxyUser": "syt8032264985",
"proxyPassword": "997814"
},
"UserName": UserName
}
print(datad)
try:
resp = requests.post(url, json=datad, headers=headers)
except:
pass # try:
else:
return resp.json()
def qiangkai(ticket):
url = "http://localhost:9083/api/Specical/WX?ticket=" + ticket + "&ProxyIP="
try:
resp = requests.get(url, headers=headers)
return resp.json()
except:
return {"code": -1, "msg": "强登失败"}
def zhuxiancheng(asss):
# should_stop = False
# while not should_stop:
try:
for it in asss:
res = xintiao(it['wxid'])
if str(res['Message']) == '用户可能退出' or res['Code'] != 0:
print(str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) + it['wxid'] + ' 已离线!进行重登')
result = Axy(it['wxid'], it['Password'], it['A16'])
if result['Message'] == '成功':
# wxid_list.append(result["Data"]["acctSectResp"]['userName'])
print(it['wxid'] + "----" + '执行协议登录状态:' + result['Message'] + "----加入到列表等待心跳")
else:
pattern = r'&ticket=(.*?)\]\]'
match = re.search(pattern, str(result))
# 提取匹配的数据
if match:
ticket_data = match.group(1)
else:
ticket_data = ""
continue
print(it['wxid'] + "----" + '执行登录协议状态:' + result['Message'] + " " + ticket_data)
print(it['wxid'] + "----" + '开始执行强开:')
qiangdengzt = qiangkai(ticket_data)
print(it['wxid'] + "----" + '强开状态:' + str(qiangdengzt))
if qiangdengzt['msg'] == '失败':
print(it['wxid'] + "----" + '强开状态:强开成功')
result = Axy(it['wxid'], it['Password'], it['A16'])
print(it['wxid'] + "----" + '强开状态:开始尝试重新登陆')
if result['Message'] == '成功':
print(it['wxid'] + "----" + '执行登录协议状态:' + result['Message'])
# wxid_list.append(result["Data"]["acctSectResp"]['userName'])
print(it['wxid'] + "----" + '强开后重新登录状态:成功----加入到列表等待心跳')
else:
print(str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) + it['wxid'] + '心跳成功!')
except:
pass
def check_purchase_status(act):
# 根据账户ID,停止对应的10个线程
thread_list = thread_dict[act]
for thread in thread_list:
if thread.should_stop:
thread.join()
if __name__ == '__main__':
asss = fengeshuju()
while True:
zhuxiancheng(asss)
print('-------------------------------------')
print('-------------------------------------')
time.sleep(20)