109 lines
4.6 KiB
Python
109 lines
4.6 KiB
Python
import random
|
||
import time
|
||
|
||
from curl_cffi import requests
|
||
|
||
|
||
class Soul:
|
||
def __init__(self, ):
|
||
self.lb_session = requests.Session()
|
||
|
||
lb_headers = {
|
||
'User-Agent': 'cn.soulapp.android/b25cff Mozilla/5.0 (Linux; Android 9; NX627J Build/PQ3A.190605.06171036; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36 SoulBegin-Android-5.77.1-wifi-SoulEnd',
|
||
# 'Accept-Encoding': 'gzip',
|
||
'Content-Type': 'application/json; application/json; charset=UTF-8',
|
||
'clienttraceid': 'f17503099772361840Tlg2MjdKNjeHnMG0eaA_Ug__fd844985',
|
||
'content-encoding': 'gzip',
|
||
'tk': 'wlW68AZzN2/0ysY2jNFnZfT4evRGCQxj',
|
||
'di': 'aFKIuuFy9EUDAKOebAz8m+A5',
|
||
'sdi': 'Tlg2MjdKNjeHnMG0eaA_Ug__fd8449854849b5861d8141686e5529bd',
|
||
'aid': '10000003',
|
||
'av': '5.77.1',
|
||
'avc': '25061011',
|
||
'at': '197869abc98',
|
||
'os': 'android',
|
||
'slb': 'enJiRzNJd0JoeTF0cHJCU1FxREQrZTJxSVg0RUVmNVF2eW9aODVPbktJckFzY2d5UCtvd0p3PT0=',
|
||
'cs': '028d0738f25c4e96d095773787d0e61277ae',
|
||
}
|
||
|
||
self.lb_session.headers.update(lb_headers)
|
||
|
||
pl_headers = {
|
||
'User-Agent': 'cn.soulapp.android/b25cff Mozilla/5.0 (Linux; Android 9; NX627J Build/PQ3A.190605.06171036; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36 SoulBegin-Android-5.77.1-wifi-SoulEnd',
|
||
# 'Accept-Encoding': 'gzip',
|
||
'Content-Type': 'application/json; application/json; charset=UTF-8',
|
||
'clienttraceid': 'f17503100521661857Tlg2MjdKNjeHnMG0eaA_Ug__fd844985',
|
||
'content-encoding': 'gzip',
|
||
'tk': 'wlW68AZzN2/0ysY2jNFnZfT4evRGCQxj',
|
||
'di': 'aFKIuuFy9EUDAKOebAz8m+A5',
|
||
'sdi': 'Tlg2MjdKNjeHnMG0eaA_Ug__fd8449854849b5861d8141686e5529bd',
|
||
'aid': '10000003',
|
||
'av': '5.77.1',
|
||
'avc': '25061011',
|
||
'at': '197869be14d',
|
||
'os': 'android',
|
||
'slb': 'enJiRzNJd0JoeTF0cHJCU1FxREQrZTJxSVg0RUVmNVF2eW9aODVPbktJckFzY2d5UCtvd0p3PT0=',
|
||
'cs': '028d2f384fac06967d4577575dc4047077ae',
|
||
}
|
||
|
||
self.pl_session = requests.Session()
|
||
self.pl_session.headers.update(pl_headers)
|
||
|
||
def get_lb_lists(self):
|
||
json_data = {
|
||
'country': '中国',
|
||
'topPostId': 4423439828,
|
||
'cityName': '成都市',
|
||
'pageIndex': 1,
|
||
'userActInfo': '{"netState":3,"watchPidNum":3}',
|
||
'latitude': '30.513669',
|
||
'subTabType': '1',
|
||
'subTabExt': '',
|
||
'firstPostId': 4423439828,
|
||
'openLocationFlag': True,
|
||
'clientMsgInfoStr': '{"prevPageExposureInfos":{"exposurePids":[{"actionList":[{"actTypes":[15],"pid":"4423439828","position":0},{"actTypes":[15],"pid":"4423037240","position":1},{"actTypes":[15],"pid":"4412549870","position":2}],"pageIndex":1,"requestTime":1750309850800}],"pageId":"PostSquare_City"}}',
|
||
'longitude': '104.025841',
|
||
}
|
||
|
||
response = self.lb_session.post(
|
||
'https://post.soulapp.cn/v5/post/recommended?bi=%5B%22197869abc94%22%2C46000%2C%22nubia%22%2C%22Android%22%2C28%2C9%2C%22NX627J%22%2C%22nubia%22%2C320%2C%22900*1600%22%2C%22soul64%22%2C%22WIFI%22%2C%22zh_CN%22%5D&bik=32755&pageId=PostSquare_City',
|
||
json=json_data,
|
||
)
|
||
|
||
ld_lists = []
|
||
for i in response.json()["data"]["postList"]:
|
||
ld_lists.append(i["id"])
|
||
|
||
return ld_lists
|
||
|
||
def to_ppl(self, id):
|
||
json_data = {
|
||
'atInfoModels': [],
|
||
'content': '我 04 年的,身高 173,体重 67 公斤左右,在双流区这边上班,程序员,不抽烟不喝酒,平时比较喜欢运动,比如羽毛球,跑步,偶尔打游戏,喜欢听音乐,唱歌,做饭,性格方面比较内向一点,熟了之后会比较好一点',
|
||
'postId': id,
|
||
'state': 'NORMAL',
|
||
'syncToChat': False,
|
||
}
|
||
|
||
response = self.pl_session.post(
|
||
'https://post.soulapp.cn/posts/comments/add?bi=%5B%22197869be146%22%2C46000%2C%22nubia%22%2C%22Android%22%2C28%2C9%2C%22NX627J%22%2C%22nubia%22%2C320%2C%22900*1600%22%2C%22soul64%22%2C%22WIFI%22%2C%22zh_CN%22%5D&bik=32755&pageId=Post_Detail',
|
||
json=json_data,
|
||
)
|
||
|
||
print(response.text)
|
||
|
||
def action(self):
|
||
for i in range(10):
|
||
|
||
ld_lists = self.get_lb_lists()
|
||
|
||
for i1 in ld_lists:
|
||
self.to_ppl(id=i1)
|
||
|
||
time.sleep(random.randint(1, 9))
|
||
|
||
|
||
if __name__ == '__main__':
|
||
soul = Soul()
|
||
soul.action()
|