1212 PrivateCookie ,
1313)
1414from LittlePaimon .utils import scheduler
15- from LittlePaimon .utils .api import DAILY_NOTE_API , get_mihoyo_private_data
15+ from LittlePaimon .utils .api import DAILY_NOTE_API , get_cookie , get_mihoyo_private_data , mihoyo_headers
1616from LittlePaimon .utils .requests import aiorequests
1717from nonebot import get_bot
1818from nonebot .adapters .onebot .v11 import Message
1919from nonebot .params import CommandArg , Depends
2020
21- from ..captcha .captcha import get_pass_challenge , mihoyo_headers
21+ from ..captcha .captcha import get_pass_challenge
2222from ..config .config import config
2323from ..draw .ssbq_draw import draw_daily_note_card
2424from ..utils .logger import Logger
@@ -55,9 +55,19 @@ async def get_subs(**kwargs) -> str:
5555
5656async def handle_ssbq (player : Player , sign_allow : bool ):
5757 await LastQuery .update_last_query (player .user_id , player .uid )
58- data = await get_mihoyo_private_data (
59- player .uid , player .user_id , "daily_note"
58+ server_id = "cn_qd01" if player .uid [0 ] == "5" else "cn_gf01"
59+ cookie_info = await get_cookie (player .user_id , player .uid , True , True )
60+ headers = mihoyo_headers (
61+ cookie = cookie_info .cookie ,
62+ q = f"role_id={ player .uid } &server={ server_id } " ,
6063 )
64+ headers ["x-rpc-device_id" ] = "3cf4ac6c-aeef-4e53-8f51-7d623b01d64d"
65+ headers ["x-rpc-device_fp" ] = "38d7f1d1d0fff"
66+ data = await aiorequests .get (
67+ url = DAILY_NOTE_API ,
68+ headers = headers ,
69+ params = {"server" : server_id , "role_id" : player .uid },
70+ ).json ()
6171 if isinstance (data , str ):
6272 Logger .info (
6373 "原神实时便签" ,
@@ -67,10 +77,8 @@ async def handle_ssbq(player: Player, sign_allow: bool):
6777 False ,
6878 )
6979 return f"{ player .uid } { data } \n "
70- elif data ["retcode" ] in (1034 , 5003 ):
71- if (
72- config .rrocr_key or config .third_api or config .ttocr_key
73- ) and sign_allow :
80+ elif data ["retcode" ] == 1034 :
81+ if (config .rrocr_key or config .third_api or config .ttocr_key ) and sign_allow :
7482 Logger .info (
7583 "原神实时便签" ,
7684 "➤➤" ,
@@ -131,13 +139,14 @@ async def handle_ssbq(player: Player, sign_allow: bool):
131139 return f'{ player .uid } 获取数据失败,msg为{ data ["message" ]} \n '
132140 else :
133141 Logger .info (
134- "原神实时便签" , "➤➤" , {"用户" : player .user_id , "UID" : player .uid }, "获取数据成功"
142+ "原神实时便签" ,
143+ "➤➤" ,
144+ {"用户" : player .user_id , "UID" : player .uid },
145+ "获取数据成功" ,
135146 )
136147
137148 try :
138- img = await draw_daily_note_card (
139- data ["data" ], player .uid , player .user_id
140- )
149+ img = await draw_daily_note_card (data ["data" ], player .uid , player .user_id )
141150 Logger .info (
142151 "原神实时便签" ,
143152 "➤➤" ,
@@ -156,9 +165,7 @@ async def handle_ssbq(player: Player, sign_allow: bool):
156165 return f"{ player .uid } 绘制图片失败,{ e } \n "
157166
158167
159- @scheduler .scheduled_job (
160- "cron" , minute = f"*/{ config .ssbq_check } " , misfire_grace_time = 10
161- )
168+ @scheduler .scheduled_job ("cron" , minute = f"*/{ config .ssbq_check } " , misfire_grace_time = 10 )
162169async def check_note ():
163170 if not config .ssbq_enable :
164171 return
0 commit comments