代码:
import requests
import json
from Crypto.Cipher import DES3
from datetime import datetime
from Crypto.Util.Padding import pad, unpad
import base64
CODE = "" # 这里填写邀请码
def encrypt(data):
key = b'OW84U8Eerdb99rtsTXWSILDO'
iv = b'SK8bncVu'
cipher = DES3.new(key, DES3.MODE_CBC, iv)
padded_data = pad(data.encode("utf-8"), DES3.block_size)
cText = cipher.encrypt(padded_data)
return base64.b64encode(cText).decode("utf-8")
def get_time():
now = datetime.now()
return now.strftime("%Y-%m-%d")
def device_no():
chars = "0123456789abcdefghijklmnopqrstuvwxyz"
length = 16
return ''.join(chars[ord(c) % len(chars)] for c in str(hash(datetime.now())))[0:length]
def verify(code):
data = encrypt( json.dumps({ "sourceType": "novel", "platform": "android", "packageName": "sanliumanhua.apps.com", "version": "9tg.06.07.207", "channel": "lb", "deviceno": device_no(), "ts": get_time(), "code": code }))
form = { "data": data, "action": "verifycode" }
headers = { "User-Agent": "okhttp-okgo/jeasonlzy" }
print("form: ", form)
response = requests.post("http://lb.pigqq.com/UserShareAction.aspx", data=form, headers=headers)
if response.status_code == 200 and response.content:
return response.json()
else:
return None
for i in range(1, 51):
response = verify(CODE)
if response is None:
print("响应为空")
break
elif response["data"] == "分享码验证通过":
print(f"已邀请{i}个人")
else:
print(response["info"])
break
Comments