Commit 3be898da by baiquan

update login

parent 88e50876
......@@ -27,6 +27,8 @@ class CreateTemplateRequest(BaseModel):
class DoudianLoginRequest(BaseModel):
account: str
password: str
headers: dict
proxies: dict = None
@app.post(
......
......@@ -7,21 +7,6 @@ from common import get_account_sdk_source_info, get_ms_token, encryptParams, enc
update_callback_cookies
from dy_verify import mouse_verify
headers = {
'Accept': 'application/json, text/plain, */*',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
'Connection': 'keep-alive',
'Content-Type': 'application/x-www-form-urlencoded',
'Origin': 'https://fxg.jinritemai.com',
'Referer': 'https://fxg.jinritemai.com/',
'Sec-Fetch-Dest': 'empty',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Site': 'same-site',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0',
'X-Requested-With': 'XMLHttpRequest',
'sec-ch-ua': '"Not(A:Brand";v="99", "Microsoft Edge";v="133", "Chromium";v="133"',
}
def get_callback_cookies(login_cookies, headers, encrypt_params):
account_sdk_source_info = get_account_sdk_source_info()
check_login_params = {
......@@ -81,7 +66,7 @@ def get_callback_cookies(login_cookies, headers, encrypt_params):
logging.info(f"-------- get_callback_cookies: cookies获取成功!--------")
return update_cookies(callback_res.cookies, cookies)
def login(account, password):
def login(account, password, headers, proxies):
encrypt_params = encryptParams(account, password)
login_params = {
'fp': encrypt_params['fp'],
......@@ -104,14 +89,14 @@ def login(account, password):
'captcha_key': encrypt_params['captcha_key'],
'redirect_sso_to_login': encrypt_params['redirect_sso_to_login'],
}
login_res = requests.post(login_url, headers=headers, data=data, verify=False)
login_res = requests.post(login_url, headers=headers, data=data, verify=False, proxies=proxies)
if login_res.json()['error_code'] == 2046:
logging.info(f"-------- login: 登录失败!--------")
logging.info(f"-------- login: {login_res.json()['description']}--------")
return None
if login_res.json()['error_code'] == 3:
logging.info(f"-------- login: 登录失败!--------")
logging.info(f"-------- login: {login_res.json()['description']}--------")
logging.error(f"-------- login: 登录失败!--------")
logging.error(f"-------- login: {login_res.json()['description']}--------")
return None
if login_res.json()['description'] == '滑动滑块进行验证':
logging.info(f"-------- login_verify: 正在处理滑块!--------")
......@@ -128,8 +113,8 @@ def login(account, password):
logging.info(f"-------- login_verify: 滑块处理成功!--------")
break
if count == 5:
logging.info(f"-------- login_verify: 处理滑块失败!--------")
logging.info(f"-------- login: 登录失败!--------")
logging.error(f"-------- login_verify: 处理滑块失败!--------")
logging.error(f"-------- login: 登录失败!--------")
return None
logging.info(f"-------- login: 登录成功!--------")
return dict(get_callback_cookies(login_res.cookies, headers, encrypt_params))
......
......@@ -98,10 +98,10 @@ def execute_sync_create_template(cookies: dict, template_params: dict):
}
@shared_task(name='doudian_login')
def execute_doudian_login(account: str, password: str):
def execute_doudian_login(account: str, password: str, headers: dict, proxies: dict):
"""登录"""
try:
result = login(account, password)
result = login(account, password, headers, proxies)
return {
'code': 200,
'msg': 'success',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment