mirror of
				https://github.com/suyiiyii/nonebot-bison.git
				synced 2025-11-04 13:34:52 +08:00 
			
		
		
		
	🐛 fix type hint
This commit is contained in:
		
							parent
							
								
									59846642cc
								
							
						
					
					
						commit
						29a807df5a
					
				@ -30,6 +30,7 @@ B = TypeVar("B", bound="Bilibili")
 | 
				
			|||||||
class BilibiliClientManager(CookieClientManager):
 | 
					class BilibiliClientManager(CookieClientManager):
 | 
				
			||||||
    _default_cookie_cd = timedelta(seconds=120)
 | 
					    _default_cookie_cd = timedelta(seconds=120)
 | 
				
			||||||
    _current_user_cookie: CookieModel | None = None
 | 
					    _current_user_cookie: CookieModel | None = None
 | 
				
			||||||
 | 
					    _site_name = "bilibili.com"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    async def _get_cookies(self) -> list[Cookie]:
 | 
					    async def _get_cookies(self) -> list[Cookie]:
 | 
				
			||||||
        browser = await get_browser()
 | 
					        browser = await get_browser()
 | 
				
			||||||
@ -64,11 +65,12 @@ class BilibiliClientManager(CookieClientManager):
 | 
				
			|||||||
        )
 | 
					        )
 | 
				
			||||||
        return cookie
 | 
					        return cookie
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def _generate_hook(self, cookie: Cookie) -> Callable:
 | 
					    def _generate_hook(self, cookie: CookieModel) -> Callable:
 | 
				
			||||||
        """hook 函数生成器,用于回写请求状态到数据库"""
 | 
					        """hook 函数生成器,用于回写请求状态到数据库"""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        async def _response_hook(resp: Response):
 | 
					        async def _response_hook(resp: Response):
 | 
				
			||||||
            if resp.status_code == 200:
 | 
					            await resp.aread()
 | 
				
			||||||
 | 
					            if resp.status_code == 200 and "-352" not in resp.text:
 | 
				
			||||||
                logger.trace(f"请求成功: {cookie.id} {resp.request.url}")
 | 
					                logger.trace(f"请求成功: {cookie.id} {resp.request.url}")
 | 
				
			||||||
                cookie.status = "success"
 | 
					                cookie.status = "success"
 | 
				
			||||||
            else:
 | 
					            else:
 | 
				
			||||||
@ -89,13 +91,13 @@ class BilibiliClientManager(CookieClientManager):
 | 
				
			|||||||
        cookie = min(available_cookies, key=lambda x: x.last_usage)
 | 
					        cookie = min(available_cookies, key=lambda x: x.last_usage)
 | 
				
			||||||
        return cookie
 | 
					        return cookie
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    async def _choose_cookie(self, target: Target | None) -> Cookie:
 | 
					    async def _choose_cookie(self, target: Target | None) -> CookieModel:
 | 
				
			||||||
        """选择 cookie 的具体算法"""
 | 
					        """选择 cookie 的具体算法"""
 | 
				
			||||||
        if self._current_user_cookie is None:
 | 
					        if self._current_user_cookie is None:
 | 
				
			||||||
            self._current_user_cookie = await self._get_next_user_cookie()
 | 
					            self._current_user_cookie = await self._get_next_user_cookie()
 | 
				
			||||||
        if self._current_user_cookie:
 | 
					        if self._current_user_cookie:
 | 
				
			||||||
            return self._current_user_cookie
 | 
					            return self._current_user_cookie
 | 
				
			||||||
        return await config.get_cookie(self._site_name, is_anonymous=True)
 | 
					        return (await config.get_cookie(self._site_name, is_anonymous=True))[0]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @override
 | 
					    @override
 | 
				
			||||||
    async def refresh_client(self):
 | 
					    async def refresh_client(self):
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user