You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
281 lines
21 KiB
281 lines
21 KiB
import os
|
|
import json
|
|
import time
|
|
import random
|
|
from datetime import datetime
|
|
from typing import Any, Dict, List, Optional, Tuple
|
|
import requests
|
|
from dateparser.data.date_translation_data import pt
|
|
|
|
from utlit.retry import retry
|
|
from loguru import logger
|
|
from utlit.utils import parse_nested_json
|
|
|
|
cwd = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|
print(cwd)
|
|
logger.add(f"{cwd}/my.log",
|
|
level="DEBUG",
|
|
rotation="00:00",
|
|
retention="3 days",
|
|
compression="zip",
|
|
backtrace=True)
|
|
|
|
|
|
class ToolsLoad:
|
|
"""工具类:封装API操作"""
|
|
|
|
@retry('提交结果', 5)
|
|
def post_task(self, data):
|
|
"""提交任务处理结果到服务器"""
|
|
# url = "https://api.granking.com/api/third/submitProjectTask"
|
|
# resp = requests.post(url, json=data, timeout=(5, 300))
|
|
# resp.raise_for_status()
|
|
if type(data) != str:
|
|
data = json.dumps(data, ensure_ascii=False)
|
|
|
|
url = "https://api.granking.com/api/third/submitProjectTask"
|
|
|
|
payload = data
|
|
headers = {
|
|
'User-Agent': 'Apifox/1.0.0 (https://apifox.com)',
|
|
'Content-Type': 'application/json',
|
|
'Accept': '*/*',
|
|
'Host': 'api.granking.com',
|
|
'Connection': 'keep-alive',
|
|
'Cookie': 'lang=zh-cn'
|
|
}
|
|
|
|
response = requests.request("POST", url, headers=headers, data=payload).json()
|
|
|
|
return response
|
|
|
|
@retry('获取task消息', 5)
|
|
def get_task(self):
|
|
"""从任务队列获取待处理任务"""
|
|
url = "https://api.granking.com/api/third/getTask?app_id=aa65700299848d6f21b969dbc9f6cf7c&secret=5588071d36f0bc61af849c311a03f2c4&date=2025-09-20&platform_ids=2"
|
|
resp = requests.get(url, timeout=(5, 20))
|
|
resp.raise_for_status()
|
|
return resp.json()
|
|
|
|
@retry('更新任务状态', 5)
|
|
def update_task_status(self, task_id: str, status: str):
|
|
"""更新任务状态"""
|
|
url = "https://api.granking.com/api/third/updateTask?app_id=aa65700299848d6f21b969dbc9f6cf7c&secret=5588071d36f0bc61af849c311a03f2c4"
|
|
payload = {"task_id": task_id, "status": status}
|
|
resp = requests.post(url, json=payload, timeout=(5, 20))
|
|
resp.raise_for_status()
|
|
return resp.json()
|
|
|
|
|
|
class TongyiChatClient:
|
|
"""通义千问聊天客户端"""
|
|
|
|
def __init__(self, cookie):
|
|
self.api_url = "https://api.tongyi.com/dialog/conversation"
|
|
self.headers = {
|
|
"Host": "api.tongyi.com",
|
|
"Connection": "keep-alive",
|
|
"X-Platform": "pc_tongyi",
|
|
"X-XSRF-TOKEN": "76d46e4e-87a0-4a76-8811-8ee300b56c4d",
|
|
"sec-ch-ua-mobile": "?0",
|
|
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
|
|
"accept": "text/event-stream",
|
|
"Content-Type": "application/json",
|
|
"Origin": "https://www.tongyi.com",
|
|
"Sec-Fetch-Site": "same-site",
|
|
"Sec-Fetch-Mode": "cors",
|
|
"Sec-Fetch-Dest": "empty",
|
|
"Referer": "https://www.tongyi.com/qianwen",
|
|
"Accept-Encoding": "gzip, deflate, br, zstd",
|
|
"Accept-Language": "zh-CN,zh;q=0.9",
|
|
"Cookie": cookie,
|
|
}
|
|
|
|
def _build_payload(self, keyword: str) -> str:
|
|
"""构建请求payload"""
|
|
post_data = json.dumps({
|
|
"sessionId": "",
|
|
"sessionType": "text_chat",
|
|
"parentMsgId": "",
|
|
"model": "",
|
|
"mode": "chat",
|
|
"userAction": "new_top",
|
|
"actionSource": "",
|
|
"contents": [{
|
|
"content": keyword,
|
|
"contentType": "text",
|
|
"role": "user",
|
|
"ext": {"deepThink": True}
|
|
}],
|
|
"action": "next",
|
|
"requestId": "cdd3936e15364cef8415f14e1daa0b07",
|
|
"params": {
|
|
"deepThink": True,
|
|
"specifiedModel": "tongyi-qwen3-max-model",
|
|
"lastUseModelList": ["tongyi-qwen3-max-model"],
|
|
"recordModelName": "tongyi-qwen3-max-model",
|
|
"bizSceneInfo": {}
|
|
}
|
|
}, ensure_ascii=False)
|
|
return post_data
|
|
|
|
def chat(self, keyword: str) -> Tuple[str, List[Dict[str, str]]]:
|
|
"""执行聊天请求并获取AI回复"""
|
|
headers = dict(self.headers)
|
|
data = self._build_payload(keyword)
|
|
|
|
ai_search_result_list = []
|
|
answer = ''
|
|
|
|
try:
|
|
with requests.post(self.api_url, data=data, headers=headers, stream=True, timeout=60) as r:
|
|
r.encoding = "utf-8"
|
|
if r.status_code != 200:
|
|
text = r.text
|
|
raise RuntimeError(f"Upstream status {r.status_code}: {text[:200]}")
|
|
r.raw.decode_content = True
|
|
for ln in r.iter_lines(decode_unicode=True):
|
|
if not ln:
|
|
continue
|
|
# logger.info("SSE line: {}", ln)
|
|
|
|
if '今日超过调用次数' in ln:
|
|
logger.error(ln)
|
|
return ln, ln
|
|
data_str = ln.replace('data: ', '')
|
|
data = parse_nested_json(data_str)
|
|
# 获取结果
|
|
contents = data.get('contents', [])
|
|
# 保存搜索内容
|
|
for content in contents:
|
|
content_type = content.get('contentType', '')
|
|
if content_type == 'referenceLink':
|
|
search_result_list = content.get("content", {}).get("links", [])
|
|
for search_result in search_result_list:
|
|
dic = {}
|
|
dic["url"] = search_result.get('url', '')
|
|
title = search_result.get('title', '')
|
|
dic["title"] = title
|
|
dic["body"] = search_result.get('body', '')
|
|
dic["host_name"] = title.rsplit('-', 1)[1] if '-' in title else '未知'
|
|
dic["publish_time"] = search_result.get('time', 0)
|
|
ai_search_result_list.append(dic)
|
|
if content_type == 'text':
|
|
answer = content.get('content', '')
|
|
|
|
return answer, ai_search_result_list
|
|
|
|
except requests.exceptions.RequestException:
|
|
raise
|
|
except Exception:
|
|
raise
|
|
|
|
|
|
class Start:
|
|
"""通义千问任务处理器主类"""
|
|
|
|
def __init__(self, cookie):
|
|
self.tools = ToolsLoad()
|
|
self.client = TongyiChatClient(cookie)
|
|
|
|
@retry('处理消息任务', for_work=0, time_sleep=60)
|
|
def process_task(self, task, a):
|
|
"""处理单个任务"""
|
|
task_id = task.get("id", "")
|
|
keyword = task.get("keyword", "")
|
|
brand = task.get("brand", "")
|
|
platform_id = task.get("platform_id", "")
|
|
|
|
logger.info(f"账号:{a} 开始处理任务 {task_id} (keyword={keyword})", task_id, keyword)
|
|
|
|
# 使用通义千问API发起请求
|
|
answer, search_result = self.client.chat(keyword=keyword)
|
|
if '今日超过调用次数' in answer:
|
|
print(f'账号:{a} 今天超过限制')
|
|
time.sleep(30*60)
|
|
return False
|
|
|
|
# 组装提交数据
|
|
ts = time.time()
|
|
dt = datetime.fromtimestamp(ts).strftime("%Y-%m-%d %H:%M:%S")
|
|
dic1 = {"2": "通义千问"}
|
|
result = {
|
|
'app_id': 'aa65700299848d6f21b969dbc9f6cf7c',
|
|
'secret': '5588071d36f0bc61af849c311a03f2c4',
|
|
'platform_id': platform_id,
|
|
'platform_name': dic1.get(platform_id),
|
|
'prompt': keyword,
|
|
'keyword': brand,
|
|
'answer': answer,
|
|
'search_result': search_result,
|
|
'screenshot_file': '',
|
|
'run_status': True,
|
|
'task_id': task_id,
|
|
'rank': 0,
|
|
'start_time': dt,
|
|
'end_time': dt,
|
|
'screenshot_url': '',
|
|
'words': []
|
|
}
|
|
|
|
|
|
logger.info(f"账号:{a} 任务 {keyword} 结果返回: {result}")
|
|
post_resp = self.tools.post_task(result)
|
|
logger.info(f"账号:{a} 提交返回: {post_resp}")
|
|
return True
|
|
|
|
@retry('主运行窗口', for_work=1)
|
|
def start_task_msg(self, a):
|
|
"""获取并处理任务"""
|
|
task_resp = self.tools.get_task()
|
|
# task_resp = {}
|
|
# task_resp['data'] = {'id': 'eb457930e154753c5964404e7a8e0d5d', 'project_id': '019df74fec257337813e2651180be6e0', 'keyword_id': '019df777e80471ed9e7b862d898b085e', 'keyword': '点外卖有没有省钱技巧', 'brand': '美团', 'platform_id': '4', 'gather_date': '2026-05-06', 'gather_time': '06:00', 'gather_filter': '2026-05-06 00:30:02', 'status': 2, 'retry_count': 0, 'screen_flag': 1, 'thinking': 1, 'is_deal': 1, 'is_init': 2, 'publish_time': '2026-05-06 11:39:42', 'screen_url': '', 'priority': 1200, 'start_time': None, 'end_time': None, 'create_time': '2026-05-06 00:32:09', 'update_time': '2026-05-06 11:39:42', 'delete_time': 0, 'create_by': '', 'update_by': '', 'type': 1}
|
|
print(task_resp)
|
|
if not task_resp:
|
|
logger.info(f"get_task 未返回有效数据,等待后重试: 账号{a}")
|
|
time.sleep(5)
|
|
return True
|
|
|
|
data = task_resp.get("data", False)
|
|
if not data:
|
|
logger.info(f"没有任务数据,等待下一轮: 账号{a}")
|
|
time.sleep(30)
|
|
return True
|
|
|
|
return self.process_task(data, a)
|
|
|
|
def run(self, a):
|
|
"""主循环"""
|
|
logger.info(f"启动通义千问任务处理器: {a}")
|
|
while True:
|
|
self.start_task_msg(a)
|
|
time.sleep(random.uniform(5, 10))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
cks = [
|
|
"UM_distinctid=19ba052efa8581-06dddb8c662afe8-26061a51-4b9600-19ba052efa9883; _ON_EXT_DVIDN=eCy#AANaRJDxEVb8bqwLxl0KH/LbC9Qr4fNXN8jM0ilCEryuKtBG5KxxupJRI201LiXuKkA=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU5hUkpEeEVWYjhicXdMeGwwS0gvTGJDOVFyNGZOWE44ak0waWxDRXJ5dUt0Qkc1S3h4dXBKUkkyMDFMaVh1S2tBPSIsImRldmljZUZpbmdlcnByaW50IjoiNDkzMTBjMmY1ZDk5ZmRjMmYwNmJkMjU5MjYzMjAzMzIifQ==; tongyi_sso_ticket=64kQ7YnAty8knctY0wC4BRzmgpubGDzpf8Gz1g_BynogsOH1apRX0qcdzyjCw$oV3MA93SvC4gFR0; tongyi_sso_ticket_hash=tytk_hash:1086e3f695c3ed852ed9eb88d0a14438; theme-mode=light; _qw_bx_timeout_v1=1000; xlly_s=1; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0EzZEh3ZFdqOUFoUlV2Q2Z1WWZQOUhOekdSVnN5VEhLTzJmMV9zNGVGOWw3YzFDRVJuUXlsTjB3c3NxNzVDbTg9IiwiZXAiOjE3NzcyOTA2MTEyNjR9; JSESSIONID=52154072221ECD03C5145FF3DCD02AC2; sm_uuid=7917b46d4e5f49dea2557d62e77f2cad|||1777270865; sm_ruid=7917b46d4e5f49dea2557d62e77f2cad|||1777270865; isg=BFRUK5WUwehqr1UHZoMeoFJjJZLGrXiXguk40u42HV3-2f8jCr4wJk6b2dHBIbDv; tfstk=gJ6IlXvpF20ISIZLy2rZfGmrVk9Wplyqv0tRmgHE2ppKy4Iv7HSUtgu-FNTNLeSepUi5ziLKJUhpXGKcr3E3ZBhWXH-Yx4Fo9Rd5o30-weLKXfQRrub5qkxJyaQWz6Pa3MjHELUVN-yVxpH09hQIeYnT23KrelRpSgfS4LU4u-lZXB4eeM8a3gROXFxSpXKdyFL9YFK-9LQJWCKv02pJeaE6WnxDyvdJwRK92FLJeLQRXltyWHpJeaITf3cmYVtrRhSQ2dNXl8DYDGTseYB6XzxdAbHDvt-BOEIdd1f1CTABkMLsFyKYLf8WStUa1GbN9w-GP-a6BiC6peWTkYTPi9jOCBn-sMp9RiA1syM9bQTC69ds2YIHQ1bPNwaIteCF5Ix960wDbZ8Ox9C_qVIdue9pXCyYcGdR_9AcLPHBHsjeL_QTCv_A43M2lSFtNcOmFhT4flGoZUpDdFVUyP0H9hxL3lZs7TApjhalUlGBgBKMvHq_f2fc.",
|
|
"UM_distinctid=19dcd9ce400560-0f72c9a22d56308-26061e51-4b9600-19dcd9ce401f70; theme-mode=light; _samesite_flag_=true; _qw_bx_timeout_v1=1000; xlly_s=1; _ON_EXT_DVIDN=eCy#AAP69RjfUKviqCemYO4tUEEbXeNf0IeAt7xAzQGjSxbQ4DTdN8VLAwl2+uh+Nc7hK7s=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQVA2OVJqZlVLdmlxQ2VtWU80dFVFRWJYZU5mMEllQXQ3eEF6UUdqU3hiUTREVGROOFZMQXdsMit1aCtOYzdoSzdzPSIsImRldmljZUZpbmdlcnByaW50IjoiZjFiYzg5OTA3YmE4ZjlmNzlhYWY5MDZkOGI4Yjk0ZDYifQ==; tongyi_sso_ticket=mG0YF*jzmRq19aotQ8mEwpfbGzzg_8yn1gsBH1opRO0qadzXjCc$oy0bNs1h*5poA2RM9ZsXXxZ_0; tongyi_sso_ticket_hash=tytk_hash:7c21ff5373b02f1999eec4ebaf3d4c3e; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0FhVTBLMG9DNlBDbmF4TmhYSFg1QnBsa3Nxb2NtaW9HTFFZdHZ6dnR3NnNUalpOUHNoU0VRVGFsT0pJSTFHMzQ9IiwiZXAiOjE3NzcyOTEwNTQwMzN9; isg=BGBg0WgjHUyX3qFIiyOQ1uUSMW4yaUQz3nWsPtpzuXsO1QP_hH85wlMjbX3V5fwL; tfstk=gtFjkiGx1nxb_tbAXn7yPzqNVLhsfa5ekFgT-Pd2WjhvXhUK4qzVnP-91uizgmzqMcT_bynvDcpxyz33jVQcIxpsyqudohBMH_H_xVx9BmnvyLETjNq_SZ0tXlEsb-WPTr4msfIUC65UoWbICbrsHqL-wz0MHnBrHDzgVFsFY651HUh1cMzqaTujeVm-kIn96aM-72ltkIHOP03s-dKYXfQ5P20wHIHt6z3--qGtXlhOPzno5f3YXfQ7y00tGY-S7ngzlNh5Qk-e754xVCdTM1DoA3ixr4FSlxiKe0OOz7gjhDUY90mrw4FzNvky7MG8-8rxPX16wjMQiWM8MgAsEli-CShwRCU70zeECSQGnzNscvFxFeRsiz0TXAwlABujg8MQG-bM2rEEcJh07es4PvwSK4HJ5Kh4LyPipSCXx0kn5kgQcnsPsBoCpTp6PvAsPD75PdviXXcjqEE568MxrqCFPatzsx3oPXVNPKaZH40xoa_WmJf..",
|
|
"UM_distinctid=19e05ace6c8c33-09261779579fda8-3e2d0c10-4b9600-19e05ace6c9238d; theme-mode=light; XSRF-TOKEN=981723fa-0ff7-4547-aef1-cc35a3595a27; XSRF-TOKEN=981723fa-0ff7-4547-aef1-cc35a3595a27; _samesite_flag_=true; cna=YUmEIiHa0V0BASQOA6JJaFj0; xlly_s=1; tongyi_sso_ticket=i3jTmA0ScpUF9_URVf8laU62yErIoFfA5fbKzzp_8Gn1gsBy1ogROHqapzX0Ccdoyjpp$dlMt9Vx0; tongyi_sso_ticket_hash=tytk_hash:7dc1a46667e392197baa4ee790996810; _qw_bx_timeout_v1=1000; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0FMdEc0OTAwTWpBZGpGekJyRWFuU2MtTW43TnFkcHZMR3dMUzdmbjZfRFNxT19mUDBpb0tQWjFoUF82NGg1MEk9IiwiZXAiOjE3NzgyMzE1NjM4MDB9; _ON_EXT_DVIDN=eCy#AAN+t8g6Jgo7lk9g6nVWuKQG41eJGKhn3xtt9gIWttxDf5dnraiMiEYZBPXH9thFpLU=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU4rdDhnNkpnbzdsazlnNm5WV3VLUUc0MWVKR0tobjN4dHQ5Z0lXdHR4RGY1ZG5yYWlNaUVZWkJQWEg5dGhGcExVPSIsImRldmljZUZpbmdlcnByaW50IjoiZmM2OGNhODQyYmJiYzhkMjkyNzg0MzY5MzU3NGJlZTAifQ==; tfstk=g5OjdRwoLoqju-gxXouzR4JQwvC1C4lU1P_9-FF4WsCYXlLd4Z8qnFrT13sygi8VMrvkYeF2gxfa1sfG6DoETXz2o1ft0wZwHrfRJNbt_iFOwsbNeM0atX8DozUbX2J-Tf9vHq_OXhBA2TQG2NITMhCR2Zj8MNFAWu35SgCOWSC9ybQ1JSQAWhL-PNjRX1BvX_35SgIO61hkiu_aca8jSWtDk0ocdEI765dxstsBqRP_1Q_fhCLcVe8eNZ6fvOwtnWOv4Fd2iTDzE1Yydh99jvylGFpAMw8mG71pkLR1zCuaCiKDNUdcFyPFhdQ1p1B7W5L5igtH16hLVavJuddDcPNOoIRFCMXSW5XNwBWppnai-UCAWhXH_DVcDFLHtp5Ia-CpPdKBCglLTMNs1Ra5K5_5Y4g7IRbXb_x7eEplitQlkXuSPuRGHab5Y4g7IRXArZpEP4Zys; isg=BIWF_lLhQPmoH2SlrMQVsLz2lMG_QjnUoqsvY4fqVrzLHqSQT5SNpW70KELoXlGM",
|
|
"theme-mode=light; UM_distinctid=19e05b28ed7955-03ad77104f659d-26061e51-4b9600-19e05b28ed82437; _samesite_flag_=true; cna=1EqEIqjt7DoBASQOA6IeP4xK; xlly_s=1; tongyi_sso_ticket=tzORv5J3LepQEjEdUDyvNFsFZo4pS7yOCOmHb6_zpf8Gz1g_BynogsOH1apRX0qcdzyjCs$oToJZ0; tongyi_sso_ticket_hash=tytk_hash:e82adda9bb503f4191b289ead1b14d63; _qw_bx_timeout_v1=1000; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0FGdTNROTFQcy1iWHhObUc4ZlBuZmRHREVpaGpoVXBaa3ZmSTVLMXoyM0ZadElWVEtONk5JbThzcVdFay0xR289IiwiZXAiOjE3NzgyMzE5OTgzMjd9; _ON_EXT_DVIDN=eCy#AAN0QZ7GfNvzHKFVXascdh5MAeWZDi5pOITilZF1SufTkDmYnCose670VWvcyAexoyA=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU4wUVo3R2ZOdnpIS0ZWWGFzY2RoNU1BZVdaRGk1cE9JVGlsWkYxU3VmVGtEbVluQ29zZTY3MFZXdmN5QWV4b3lBPSIsImRldmljZUZpbmdlcnByaW50IjoiNTUxMDQ4YmU0MDZlZWExZjMxMjJjMGI3YzU3YWQzYjQifQ==; isg=BNTUmYKXQXq3K9U2QnTuqI0BpRJGLfgXAmm4Um61Id_iWXWjlj89p2caWVFBoTBv; tfstk=gTBiQsMR71R_Hr0UEqJ_tLDrFgNL6d9X_ZHvkKL4Te8IWVHO0Kyckw3O6iI2oZbpRZAbfEL2oZIV6ke8eGs6hKu0y8eJAwVzhN0wbAr2Tn-7vhuDFIiJhKz8JXH218vfSWF1MISUxnKj_E72_2ueRnDquZ8wT2-kVK8VuZJE83tq3AJ2uMkeRnJ2uZJ4xM8BmK8VuKrhYbqE_UK2W9zWTSzElLYhKhAMzMVS3xvEeC8PbeD4z9xGuUSw-xkvzYWoqMjTSYspCT_k2NeEIaj5dwxFz-4Hhw1VunbUFqp1wN6WtMNrLMpMRQ8FUVlwqdYMaORI4usyg6XHBOzjNMIH7Qvd9Wa9MdbGNUOaOy_cxFQVIBugJECRvORhzyHhlIf5DnbgIA7P4ThEacAjhHrALjGX_HtHy8q3FV3UM3zTxkcRcC-B0_E3xjie_Ht1LkqnwuOwAhc5.",
|
|
"UM_distinctid=19ddcfffe19a71-0c0744a63b8dda-3639313d-384000-19ddcfffe1a1453; cna=q995Iue97B8BASQOA6LqO1pE; theme-mode=light; XSRF-TOKEN=92291628-a38e-4df2-9aac-d6b57f792715; XSRF-TOKEN=92291628-a38e-4df2-9aac-d6b57f792715; _samesite_flag_=true; xlly_s=1; tongyi_sso_ticket=OH1apRX0qcdzyjCO$oQ4ZwftL86kfpryzHZDMYSOyYmUxtIy8120EXqC9SxFpfbGzzg_8yn1gsBo0; tongyi_sso_ticket_hash=tytk_hash:c675b29ed9350cb9b78985f3fc3dbc38; _qw_bx_timeout_v1=1000; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0E0SFh0SFJZUi1pTUdsd0pMVW54dGpoTW42YzBsU01yUHd6WlU4RTkwYWZnQ1dnZV9STjJqWUk3RHQ0N0N1clE9IiwiZXAiOjE3NzgyMzIwOTkzNjV9; _ON_EXT_DVIDN=eCy#AANZeumXYKgKaJ1C0WYy/5zae+9aEypxdTTXRjAdaEFdbxEbsWjTyHOboXBq7dY6HoA=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU5aZXVtWFlLZ0thSjFDMFdZeS81emFlKzlhRXlweGRUVFhSakFkYUVGZGJ4RWJzV2pUeUhPYm9YQnE3ZFk2SG9BPSIsImRldmljZUZpbmdlcnByaW50IjoiNzNiMmRhYjNmODFmMjNiMDcyNzlkMzg3YmE1YjQ3MjAifQ==; isg=BJuboV2fdt_EYYokjKJgrYBMKv8FcK9yXXbrqI3YKRqxbLtOFUMfwi8vBsxizAdq; tfstk=gRz-arc2stXugv_fBUj0xU5TpICmyiVyZ8P6-vDkA-eY15JoA0qoJkF_BDmCU44LH4z0qeDlU2FQI2BGINbga7orROXGME7Hd2GC-vsmV_VGJ36GINbcVIgdeOVkiQ8icXkjNXTIAsHjtXuINbMCMxGK_H97d21AMXh6NHMWRjij6XgIdJgCMSMq92G7d21YGxlIZ3C-3aGwJoz5u71ADSLBRrh-ciVShi2LkbnmC7aJReGsw0H_NxW84ssEcWoL8B8KY7ZaLfwWFOmzOoexw2QDVVNYARh4PNv-guVbsxN9TePryrUYAmC5PS3-ec4bnQKIykwzJ0rJT1PjP-rZQ0sV3jUuSDHZDK67iSHSXkel3eMuXSwxjrvDS2y4AJGLhLIznP4TizpiBXx5MsKeY0G2yhMOU2AvUClxI_iWYHoTujHGMcxeYmUZMAfJ2H-E0t5.."
|
|
]
|
|
cks = [
|
|
'theme-mode=light; XSRF-TOKEN=a5f58cf1-2288-4154-8266-967a4ae178ea; XSRF-TOKEN=a5f58cf1-2288-4154-8266-967a4ae178ea; _samesite_flag_=true; UM_distinctid=19e0650daae6a6-0ca63746001f978-26061f51-125f20-19e0650daaf68b; cna=WnOEIm7uf2kBASQOA6K2vB8K; xlly_s=1; tongyi_sso_ticket=pfbGzzg_8yn1gsBH1opRO0qadzXjCc$oysrH_ZBT5gTUpDURaocsJfSltdcnqIOGSLHmoenUNf_a0; tongyi_sso_ticket_hash=tytk_hash:de4974bed10c882f7c0a56885e8c81d6; _qw_bx_timeout_v1=1000; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0FIRkxSclc1TjdRbGFwbTFtWnBOcXRhcVdGV3NpUkJHZXdWR3dWMHNXTTFkLUVsdWwzUndtaTJ3Y0Q4NkpHSVU9IiwiZXAiOjE3NzgyNDI0MjY1MDF9; _ON_EXT_DVIDN=eCy#AAOiwZLBij1PBqFCxRFaQqQxuiTRbjqR4K/3t2pbTreC28Ll+5OIzh/M1weeBbE8Pg4=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU9pd1pMQmlqMVBCcUZDeFJGYVFxUXh1aVRSYmpxUjRLLzN0MnBiVHJlQzI4TGwrNU9JemgvTTF3ZWVCYkU4UGc0PSIsImRldmljZUZpbmdlcnByaW50IjoiMzgzNzJjOWM5M2FiNTFmYTZhYTBjNmQzYjRkYjAxZGEifQ==; isg=BF5e6H9Ku3RidO-QvQ-8LwXSr_SgHyKZn3zo9Qjnm6GcK_8FcKy-qPaIIzcnExqx; tfstk=gATIQ1cnEJ2IwCGKeJlaGjWavXb5Afu4P71JiQUUwwQLe8dAQ6RExQy8Pd6w89RFJWxM3IUe8DbzPwblyxkquqPHtabJ9OR28J0OM_uzJyQR-NIg2bymuqRH9W5KgC32YHElH_WRyMBdBVBGZJUpeMCOXOflwJC8JfOOIOCL26IR65CliWBJeah66OfRyTpRvfOOI_QReXtnV125QBGuumGKPxQW9Oa8ye3lAt6Q4zaW56sByBB1O6T1OM6AVuLffepwwe8hjmEfrC-XF3pt5y9W9npRLFHYPT-cNQCfk0kDsN6CWeKbwzd1ROjyRGeICtLH6EbObqhX6FvetFOzw4Cw3OdHJagxiw_dpN1MzA4dFhKJ8Mbupv_J1_IrJrWfwbq71i451tls1uqlZYQoQeGcfzjds1RE1fZ2xMCG1Ncs1orGv1fpTfG_dw5..',
|
|
'theme-mode=light; XSRF-TOKEN=c158bbf3-d3f4-4895-90c1-7ec7f09b38e5; XSRF-TOKEN=c158bbf3-d3f4-4895-90c1-7ec7f09b38e5; _samesite_flag_=true; UM_distinctid=19e065171c3726-07f1162ecfec668-26061f51-d4800-19e065171c44e9; cna=gXOEIqLAnzUBASQOA6KDtRWe; xlly_s=1; tongyi_sso_ticket=n4QJe8z7RxzTdemKbBi5ebiwzpf8Gz1g_BynogsOH1apRX0qcdzyjCY$oO322Vve0c_T5H40af_Z0; tongyi_sso_ticket_hash=tytk_hash:748e32d7c0a88e1bfbe55a8a3a88bc14; _qw_bx_timeout_v1=1000; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0FGalhPeTJyWGYydl9tWWh0LWl4ekxPTDlwaEcxb1dOY1FrY0NGdmh2QVBCd1ZVM2dycFREZTg5VXBGdXJOakk9IiwiZXAiOjE3NzgyNDI0ODIyMjl9; _ON_EXT_DVIDN=eCy#AAMLX4x4meI0zlZX9vwmfrjxZtxXVYTObHxHk60GOYBZ77jj8V3NZI60PDjPcGeySE8=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU1MWDR4NG1lSTB6bFpYOXZ3bWZyanhadHhYVllUT2JIeEhrNjBHT1lCWjc3amo4VjNOWkk2MFBEalBjR2V5U0U4PSIsImRldmljZUZpbmdlcnByaW50IjoiM2Q4ZWY2NmU4ZDQ2YjZiMGUxMjZmZTI4NzgwMTViZTIifQ==; isg=BG5urc9qi6Tyw__ATdhRTZI7v8QwbzJpb6zYxZg3unEsewzVAv1Re3Y9M-eXoyqB; tfstk=gNYSlg1Bp827Rgl-p8l41f52Ip_QNjuawW1psBUz9aQ8pJdO3_RrqByLRK62zTRPy9NBLCBJzv4dMSpNwUyR26IAM_59zbmnKoIAtd5p8uCRHiCwLkpBtbfdpppCL3oq7QAl-wHNRVuwZGXDlyp7yMBx911CpjS8Lavq7wHZQ2Z4MgDPJQoqT2jvMtfQyyIJpsQAstC8ezpdHiCO_8QdJphfk_f727BdereA9tBdJwppMj1FH_QdJpdxG6cVXR1xVtRStPoE830FYQBbJyL--gX12kzU8E15VedRhs52l_s5BMZp5_8J3BLyrimu4wA2fptpKcrcPBKRy1RoPr_9wn8CgelUATd2lM8fcqM6Ge65XUIb9f75k6pdAnD_7__ycGTWqX2vwdWWXaAU1YRffnsGMiFQ2a-w_ej9y4wG3GfBUtJtWr_Avg537OtgtkNfjy1fQjGbxkfnpwD2lBlE4gCciqljGlrh2sffQjGbxkjRi_drGjw5z',
|
|
'theme-mode=light; XSRF-TOKEN=78deb4db-ab58-429b-9be3-2db565000749; XSRF-TOKEN=78deb4db-ab58-429b-9be3-2db565000749; _samesite_flag_=true; UM_distinctid=19e065178931fa-0c79be7e7ce26-26061f51-d4800-19e065178948c4; cna=g3OEIldJYQ4BASQOA6KP1d5f; xlly_s=1; _ON_EXT_DVIDN=eCy#AAO2BPhSfK4/HfD8s0vpjEtJFGjpkfbT9ZDc9qGwqjqa+ofStQiPQcoXrDovGPW0muM=; _qk_bx_ck_v1=eyJkZXZpY2VJZCI6ImVDeSNBQU8yQlBoU2ZLNC9IZkQ4czB2cGpFdEpGR2pwa2ZiVDlaRGM5cUd3cWpxYStvZlN0UWlQUWNvWHJEb3ZHUFcwbXVNPSIsImRldmljZUZpbmdlcnByaW50IjoiNmIyZjA0ZWUxYzNmNzI5NzY5MmJjYmUyZWRjZWRlMDcifQ==; _qw_bx_timeout_v1=1000; tongyi_sso_ticket=_8Gn1gsBy1ogROHqapzX0Ccdoyj0B$NXIf9BxZBOrxHsxYkf6X5boxt2Wo1lmjGAX0EH2beRzpfz0; tongyi_sso_ticket_hash=tytk_hash:d9bcbac97df3f73b3730f44b45b33882; _qk_bx_um_v1=eyJ1ZCI6IlQyZ0EyZy1ZajVVRUpFR0tXSXZUSEI1cEY2TVhfUWc4SEVHNEVzcEExeUFrTUFYWVotMG5xVEQyYWctSlVGakhOUGs9IiwiZXAiOjE3NzgyNDI3NjY0NDR9; isg=BBsbM7--9l-esAqreAnXhL95qn-F8C_yApvNLg1YUpoa7DnOl8KFQFEqhkziTIfq; tfstk=g5VjluNutnxbZxbAXn7yRw5yFuc1ca5ekFgT-Pd2WjhvXhUK4qzVnP-91uizgmzqMcT_bynY3KpxyVgsSqpOjt0-y2uHkhBGIfOsolvvkimv2_3tWEE_SZ0tXlEsb-WPTr4msfIUf65UoeomaVEjkIURW2g6Bakx4-9aUfIFY19yyxjq6rWzNGk8y006MCHYX43-S03vkcEt2Y3K8nht6lQSeVupDh3tXUC-o0nt6fETyagZ2qht6lURPVcXtHgRh0zfSBWumJO3prnW6CFAsxmBB03oP7iohDH-7C3zNqMjvrFKPZd-y7PSLY8NAbU3Uo3SO1O-GvwYc4UlfBiYLyc-2lKf442Yc7H_aNX0P5ijpSHW5B4r1VEtC8jBTqG4FvNbnNx8kkobpj4wRizSd8MnyYL6HjyU85DLMstn4v0_A2ZXcgl6TDw1jdTSKCgSYa_WId0GXfjPBQfZgx3or_75PpJiH40SYa_WIdDxrqUVPatjg'
|
|
]
|
|
from threading import Thread
|
|
|
|
T = []
|
|
a = 1
|
|
for ck in cks:
|
|
A = Thread(target=Start(ck).run, args=(a,))
|
|
T.append(A)
|
|
A.start()
|
|
time.sleep(2)
|
|
a += 1
|
|
for a in T:
|
|
a.join()
|
|
|
|
# Start().run()
|