Skip to content

Commit

Permalink
fix indexer sites
Browse files Browse the repository at this point in the history
  • Loading branch information
jxxghp committed Jul 9, 2023
1 parent 9d9fde3 commit 5466287
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 12 deletions.
12 changes: 7 additions & 5 deletions app/api/endpoints/system.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import json
import json
import time
from typing import Any
from typing import Any, List

from fastapi import APIRouter, HTTPException, Depends
from fastapi.responses import StreamingResponse
Expand Down Expand Up @@ -37,16 +37,18 @@ def event_generator():
return StreamingResponse(event_generator(), media_type="text/event-stream")


@router.get("/setting", summary="查询系统设置")
@router.get("/setting/{key}", summary="查询系统设置")
def get_setting(key: str, _: schemas.TokenPayload = Depends(verify_token)):
"""
查询系统设置
"""
return schemas.Response(success=True, data=SystemConfigOper().get(key))
return schemas.Response(success=True, data={
"value": SystemConfigOper().get(key)
})


@router.put("/setting", summary="更新系统设置")
def set_setting(key: str, value: Any, _: schemas.TokenPayload = Depends(verify_token)):
@router.post("/setting/{key}", summary="更新系统设置")
def set_setting(key: str, value: List[int], _: schemas.TokenPayload = Depends(verify_token)):
"""
更新系统设置
"""
Expand Down
6 changes: 4 additions & 2 deletions app/chain/search.py
Original file line number Diff line number Diff line change
Expand Up @@ -202,9 +202,11 @@ def __search_all_sites(self, mediainfo: Optional[MediaInfo] = None,
"""
# 未开启的站点不搜索
indexer_sites = []
# 配置的索引站点
config_indexers = self.systemconfig.get(SystemConfigKey.IndexerSites) or []
for indexer in self.siteshelper.get_indexers():
if not settings.INDEXER_SITES \
or any([s in indexer.get("domain") for s in settings.INDEXER_SITES.split(',')]):
# 检查站点索引开关
if not config_indexers or indexer.get("id") in config_indexers:
# 站点流控
state, msg = self.siteshelper.check(indexer.get("domain"))
if not state:
Expand Down
9 changes: 6 additions & 3 deletions app/chain/subscribe.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@
from app.core.config import settings
from app.db.models.subscribe import Subscribe
from app.db.subscribe_oper import SubscribeOper
from app.db.systemconfig_oper import SystemConfigOper
from app.helper.message import MessageHelper
from app.helper.sites import SitesHelper
from app.log import logger
from app.schemas import NotExistMediaInfo
from app.utils.string import StringUtils
from app.schemas.types import MediaType
from app.schemas.types import MediaType, SystemConfigKey


class SubscribeChain(ChainBase):
Expand All @@ -34,6 +35,7 @@ def __init__(self):
self.subscribehelper = SubscribeOper()
self.siteshelper = SitesHelper()
self.message = MessageHelper()
self.systemconfig = SystemConfigOper()

def add(self, title: str, year: str,
mtype: MediaType = None,
Expand Down Expand Up @@ -269,11 +271,12 @@ def refresh(self):
"""
# 所有站点索引
indexers = self.siteshelper.get_indexers()
# 配置的索引站点
config_indexers = self.systemconfig.get(SystemConfigKey.IndexerSites) or []
# 遍历站点缓存资源
for indexer in indexers:
# 未开启的站点不搜索
if settings.INDEXER_SITES \
and not any([s in indexer.get("domain") for s in settings.INDEXER_SITES.split(',')]):
if config_indexers and indexer.get("id") not in config_indexers:
continue
logger.info(f'开始刷新站点资源,站点:{indexer.get("name")} ...')
domain = StringUtils.get_url_domain(indexer.get("domain"))
Expand Down
2 changes: 0 additions & 2 deletions app/core/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,6 @@ class Settings(BaseSettings):
RMT_AUDIO_TRACK_EXT: list = ['.mka']
# 索引器
INDEXER: str = "builtin"
# 索引站点,站点域名关键字使用,分隔
INDEXER_SITES: str = ""
# 用户认证站点 hhclub/audiences/hddolby/zmpt/freefarm/hdfans/wintersakura/leaves/1ptba/icc2022/iyuu
AUTH_SITE: str = ""
# 消息通知渠道 telegram/wechat/slack
Expand Down
2 changes: 2 additions & 0 deletions app/schemas/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ class SystemConfigKey(Enum):
UserInstalledPlugins = "UserInstalledPlugins"
# 搜索结果
SearchResults = "SearchResults"
# 索引站点范围
IndexerSites = "IndexerSites"


# 站点框架
Expand Down

0 comments on commit 5466287

Please sign in to comment.