fix(indexer): restore YemaPT search page size

This commit is contained in:
jxxghp
2026-08-03 18:10:43 +08:00
parent d625196b08
commit f25ee25bb0
3 changed files with 8 additions and 7 deletions
+2 -1
View File
@@ -14,7 +14,8 @@ class YemaSpider:
YemaPT 开放 API 索引器 YemaPT 开放 API 索引器
""" """
_size = 100 # YemaPT 开放 API 使用更大的分页容量时会返回空结果。
_size = 40
_movie_category = [4] _movie_category = [4]
_tv_category = [5, 6, 13, 14, 15, 16, 17] _tv_category = [5, 6, 13, 14, 15, 16, 17]
+5 -5
View File
@@ -252,18 +252,18 @@ class SearchChainAIRecommendTest(unittest.IsolatedAsyncioTestCase):
def test_search_all_sites_uses_parser_page_size_for_yema(self): def test_search_all_sites_uses_parser_page_size_for_yema(self):
""" """
验证专用解析器按自身页容量判断,避免 Yema 的 100 条分页被误停。 验证专用解析器按自身页容量判断,避免 Yema 的 40 条分页被误停。
""" """
chain = self._make_chain() chain = self._make_chain()
requested_pages = [] requested_pages = []
def search_torrents(**kwargs): def search_torrents(**kwargs):
""" """
模拟 Yema 第一页满 100 条,第二页不足 100 条后停止。 模拟 Yema 第一页满 40 条,第二页不足 40 条后停止。
""" """
page = kwargs["page"] page = kwargs["page"]
requested_pages.append(page) requested_pages.append(page)
count = 100 if page == 0 else 99 count = 40 if page == 0 else 39
return [ return [
SimpleNamespace(title=f"Result Page {page}-{index}", description="") SimpleNamespace(title=f"Result Page {page}-{index}", description="")
for index in range(count) for index in range(count)
@@ -294,14 +294,14 @@ class SearchChainAIRecommendTest(unittest.IsolatedAsyncioTestCase):
) )
self.assertEqual([0, 1], requested_pages) self.assertEqual([0, 1], requested_pages)
self.assertEqual(199, len(results)) self.assertEqual(79, len(results))
def test_indexer_module_search_page_size_uses_spider_metadata(self): def test_indexer_module_search_page_size_uses_spider_metadata(self):
""" """
验证站点单页容量由索引器模块统一读取,避免搜索链写死 parser 容量。 验证站点单页容量由索引器模块统一读取,避免搜索链写死 parser 容量。
""" """
self.assertEqual( self.assertEqual(
100, 40,
IndexerModule.get_search_page_size({"parser": "Yema"}, keyword="keyword") IndexerModule.get_search_page_size({"parser": "Yema"}, keyword="keyword")
) )
self.assertEqual( self.assertEqual(
+1 -1
View File
@@ -94,7 +94,7 @@ def test_yemapt_search_uses_open_api_auth_and_maps_fields(monkeypatch):
"url": "https://www.yemapt.org/openApi/torrent/fetchOpenTorrentList.json", "url": "https://www.yemapt.org/openApi/torrent/fetchOpenTorrentList.json",
"json": { "json": {
"keyword": "Movie", "keyword": "Movie",
"pageParam": {"current": 3, "pageSize": 100}, "pageParam": {"current": 3, "pageSize": 40},
"sorter": {}, "sorter": {},
}, },
"headers": { "headers": {