From aa67d945f19841bdedd088bf36eb7c4a51a43d7c Mon Sep 17 00:00:00 2001 From: Harold <8866033@gmail.com> Date: Mon, 20 Apr 2026 14:11:37 +0800 Subject: [PATCH] feat: finish wanou aggregate spider --- py/tests/test_玩偶聚合.py | 57 +++++++++++++++++++++++++++++++++++++++ py/玩偶聚合.py | 6 +++++ 2 files changed, 63 insertions(+) diff --git a/py/tests/test_玩偶聚合.py b/py/tests/test_玩偶聚合.py index 96f1888..c653ad3 100644 --- a/py/tests/test_玩偶聚合.py +++ b/py/tests/test_玩偶聚合.py @@ -291,3 +291,60 @@ class TestWanouAggregateSpider(unittest.TestCase): vod["vod_play_url"], "百度资源$https://pan.baidu.com/s/b1$$$夸克资源$https://pan.quark.cn/s/q1$$$夸克资源$https://pan.quark.cn/s/q2", ) + + def test_player_content_passthroughs_known_pan_domains(self): + self.assertEqual( + self.spider.playerContent("quark#玩偶", "https://pan.quark.cn/s/demo", {}), + {"parse": 0, "playUrl": "", "url": "https://pan.quark.cn/s/demo"}, + ) + self.assertEqual( + self.spider.playerContent("baidu#玩偶", "https://pan.baidu.com/s/demo", {}), + {"parse": 0, "playUrl": "", "url": "https://pan.baidu.com/s/demo"}, + ) + + def test_player_content_rejects_non_pan_url(self): + self.assertEqual( + self.spider.playerContent("zxzj", "/vodplay/1-1-1.html", {}), + {"parse": 0, "playUrl": "", "url": ""}, + ) + + @patch.object(Spider, "_request_with_failover") + def test_fetch_site_search_builds_search_url_and_parses_results(self, mock_request_with_failover): + mock_request_with_failover.return_value = """ +
