扫码登录时同时保存sina.com.cn域Cookie, 延长Cookie有效期
This commit is contained in:
@@ -512,17 +512,18 @@ def _execute_sso_login(sso_url):
|
||||
except Exception as e:
|
||||
logger.debug(f"跨域 URL 访问失败: {e}")
|
||||
|
||||
# Step 3: 只提取 weibo.com 域名的 Cookie(签到 API 只需要这些)
|
||||
weibo_com_cookies = {}
|
||||
# Step 3: 提取所有相关域名的 Cookie(weibo.com + sina.com.cn)
|
||||
# 微博 SSO 需要两个域的 Cookie 配合才能保持长期有效
|
||||
relevant_cookies = {}
|
||||
for cookie in sso_session.cookies:
|
||||
if cookie.domain and 'weibo.com' in cookie.domain:
|
||||
weibo_com_cookies[cookie.name] = cookie.value
|
||||
if cookie.domain and ('weibo.com' in cookie.domain or 'sina.com.cn' in cookie.domain):
|
||||
relevant_cookies[cookie.name] = cookie.value
|
||||
|
||||
cookie_str = '; '.join(f'{k}={v}' for k, v in weibo_com_cookies.items())
|
||||
logger.info(f"weibo.com Cookie ({len(weibo_com_cookies)} 个): {list(weibo_com_cookies.keys())}")
|
||||
cookie_str = '; '.join(f'{k}={v}' for k, v in relevant_cookies.items())
|
||||
logger.info(f"收集到 Cookie ({len(relevant_cookies)} 个): {list(relevant_cookies.keys())}")
|
||||
|
||||
if not cookie_str or 'SUB' not in weibo_com_cookies:
|
||||
logger.error(f"Cookie 不完整,缺少 SUB。获取到: {list(weibo_com_cookies.keys())}")
|
||||
if not cookie_str or 'SUB' not in relevant_cookies:
|
||||
logger.error(f"Cookie 不完整,缺少 SUB。获取到: {list(relevant_cookies.keys())}")
|
||||
return None, None, None
|
||||
|
||||
if not uid:
|
||||
|
||||
Reference in New Issue
Block a user