mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-05-31 07:26:46 +00:00
fix: proxy bangumi requests
This commit is contained in:
@@ -12,19 +12,31 @@ from app.utils.http import RequestUtils
|
||||
|
||||
|
||||
class BangumiModule(_ModuleBase):
|
||||
"""
|
||||
Bangumi媒体信息匹配
|
||||
"""
|
||||
CONFIG_WATCH = {"PROXY_HOST"}
|
||||
|
||||
bangumiapi: BangumiApi = None
|
||||
|
||||
def init_module(self) -> None:
|
||||
"""
|
||||
初始化Bangumi客户端
|
||||
"""
|
||||
self.bangumiapi = BangumiApi()
|
||||
|
||||
def stop(self):
|
||||
self.bangumiapi.close()
|
||||
def stop(self) -> None:
|
||||
"""
|
||||
关闭Bangumi客户端
|
||||
"""
|
||||
if self.bangumiapi:
|
||||
self.bangumiapi.close()
|
||||
|
||||
def test(self) -> Tuple[bool, str]:
|
||||
"""
|
||||
测试模块连接性
|
||||
"""
|
||||
ret = RequestUtils().get_res("https://api.bgm.tv/")
|
||||
ret = RequestUtils(proxies=settings.PROXY).get_res("https://api.bgm.tv/")
|
||||
if ret and ret.status_code == 200:
|
||||
return True, ""
|
||||
elif ret:
|
||||
@@ -36,6 +48,9 @@ class BangumiModule(_ModuleBase):
|
||||
|
||||
@staticmethod
|
||||
def get_name() -> str:
|
||||
"""
|
||||
获取模块名称
|
||||
"""
|
||||
return "Bangumi"
|
||||
|
||||
@staticmethod
|
||||
|
||||
@@ -10,7 +10,9 @@ from app.utils.http import RequestUtils, AsyncRequestUtils
|
||||
|
||||
class BangumiApi(object):
|
||||
"""
|
||||
https://bangumi.github.io/api/
|
||||
Bangumi API客户端。
|
||||
|
||||
接口文档:https://bangumi.github.io/api/
|
||||
"""
|
||||
|
||||
_urls = {
|
||||
@@ -28,8 +30,15 @@ class BangumiApi(object):
|
||||
|
||||
def __init__(self):
|
||||
self._session = requests.Session()
|
||||
self._req = RequestUtils(ua=settings.NORMAL_USER_AGENT, session=self._session)
|
||||
self._async_req = AsyncRequestUtils(ua=settings.NORMAL_USER_AGENT)
|
||||
self._req = RequestUtils(
|
||||
ua=settings.NORMAL_USER_AGENT,
|
||||
proxies=settings.PROXY,
|
||||
session=self._session,
|
||||
)
|
||||
self._async_req = AsyncRequestUtils(
|
||||
ua=settings.NORMAL_USER_AGENT,
|
||||
proxies=settings.PROXY,
|
||||
)
|
||||
|
||||
@cached(maxsize=settings.CONF.bangumi, ttl=settings.CONF.meta, shared_key="get")
|
||||
def __invoke(self, url, key: Optional[str] = None, **kwargs):
|
||||
@@ -306,6 +315,9 @@ class BangumiApi(object):
|
||||
"""
|
||||
self.__invoke.cache_clear()
|
||||
|
||||
def close(self):
|
||||
def close(self) -> None:
|
||||
"""
|
||||
关闭Bangumi会话
|
||||
"""
|
||||
if self._session:
|
||||
self._session.close()
|
||||
|
||||
Reference in New Issue
Block a user