From 213522c3ec488b48c8446dbf61a91c052637c643 Mon Sep 17 00:00:00 2001 From: Harold <8866033@gmail.com> Date: Mon, 20 Apr 2026 08:58:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- py/tests/test_剧圈圈.py | 43 ----------------------------------------- py/步步影视.py | 4 ++-- 2 files changed, 2 insertions(+), 45 deletions(-) diff --git a/py/tests/test_剧圈圈.py b/py/tests/test_剧圈圈.py index 6b93862..3693f34 100644 --- a/py/tests/test_剧圈圈.py +++ b/py/tests/test_剧圈圈.py @@ -73,49 +73,6 @@ class TestJuQuanQuanSpider(unittest.TestCase): self.assertEqual(len(result["list"]), 40) self.assertEqual(result["list"][0]["vod_id"], "vod/1") - @patch.object(Spider, "_request_html") - def test_category_content_prefers_vodshow_page_result(self, mock_request_html): - mock_request_html.return_value = """ - -
分类影片
-
- """ - result = self.spider.categoryContent("juji", "2", False, {}) - self.assertEqual(mock_request_html.call_args.args[0], "https://www.jqqzx.cc/vodshow/id/juji/page/2.html") - self.assertEqual(result["page"], 2) - self.assertNotIn("pagecount", result) - self.assertEqual(result["list"][0]["vod_id"], "vod/456") - - @patch.object(Spider, "_request_html") - def test_category_content_falls_back_to_type_and_stops_retrying_vodshow(self, mock_request_html): - mock_request_html.side_effect = [ - "系统安全验证", - """ - -
分类影片
-
- """, - """ - -
后续分类影片
-
- """, - ] - - first_result = self.spider.categoryContent("juji", "2", False, {}) - second_result = self.spider.categoryContent("juji", "3", False, {}) - - self.assertEqual( - mock_request_html.call_args_list, - [ - call("https://www.jqqzx.cc/vodshow/id/juji/page/2.html"), - call("https://www.jqqzx.cc/type/juji/page/2.html"), - call("https://www.jqqzx.cc/type/juji/page/3.html"), - ], - ) - self.assertEqual(first_result["list"][0]["vod_id"], "vod/456") - self.assertEqual(second_result["list"][0]["vod_id"], "vod/789") - @patch.object(Spider, "_request_html") def test_search_content_uses_suggest_api(self, mock_request_html): mock_request_html.return_value = '{"list":[{"id":"777","name":"搜索结果","pic":"/pic.jpg"}]}' diff --git a/py/步步影视.py b/py/步步影视.py index 950ebd9..d218be7 100644 --- a/py/步步影视.py +++ b/py/步步影视.py @@ -232,7 +232,7 @@ class Spider(BaseSpider): videos = [] for name in ("电影", "剧集", "综艺", "动漫"): videos.extend(self._get_class_list(name, 1, {"by": "hits"}).get("list", [])) - return {"page": 1, "limit": len(videos), "total": len(videos), "list": videos} + return {"page": 1, "limit": len(videos), "total": int(pg) * 30 + len(videos), "list": videos} return self._get_class_list(type_name, int(pg), extend or {}) def detailContent(self, ids): @@ -474,7 +474,7 @@ class Spider(BaseSpider): }, ) items = self._convert_json_to_vods(payload.get("data") or []) - return {"page": int(page), "limit": len(items), "total": len(items), "list": items} + return {"page": int(page), "limit": len(items), "total": page * 30 + len(items), "list": items} def _extract_decode_url(self, payload): if isinstance(payload, dict):