diff --git a/py/tests/test_低端影视.py b/py/tests/test_低端影视.py index a47933b..87e3eb4 100644 --- a/py/tests/test_低端影视.py +++ b/py/tests/test_低端影视.py @@ -205,6 +205,17 @@ class TestDDYSSpider(unittest.TestCase): self.assertEqual(baidu["url"], "https://pan.baidu.com/s/demo") self.assertEqual(xunlei["url"], "https://pan.xunlei.com/s/demo") + def test_home_content_keeps_reference_filter_values_for_movie(self): + movie_filters = self.spider.homeContent(False)["filters"]["movie"] + class_values = movie_filters[0]["value"] + area_values = movie_filters[1]["value"] + year_values = movie_filters[2]["value"] + sort_values = movie_filters[3]["value"] + self.assertIn({"n": "动作", "v": "/genre/action"}, class_values) + self.assertIn({"n": "中国", "v": "/region/china"}, area_values) + self.assertIn({"n": "2025", "v": "/year/2025"}, year_values) + self.assertEqual(sort_values[1], {"n": "评分", "v": "rating/"}) + if __name__ == "__main__": unittest.main() diff --git a/py/低端影视.py b/py/低端影视.py index 00c8461..f8351a5 100644 --- a/py/低端影视.py +++ b/py/低端影视.py @@ -28,6 +28,73 @@ class Spider(BaseSpider): {"type_id": "variety", "type_name": "综艺"}, {"type_id": "anime", "type_name": "动漫"}, ] + common_class_values = [ + {"n": "全部", "v": ""}, + {"n": "动作", "v": "/genre/action"}, + {"n": "喜剧", "v": "/genre/comedy"}, + {"n": "爱情", "v": "/genre/romance"}, + {"n": "科幻", "v": "/genre/scifi"}, + {"n": "悬疑", "v": "/genre/thriller"}, + {"n": "剧情", "v": "/genre/drama"}, + {"n": "恐怖", "v": "/genre/horror"}, + {"n": "惊悚", "v": "/genre/suspense"}, + {"n": "冒险", "v": "/genre/adventure"}, + {"n": "战争", "v": "/genre/war"}, + {"n": "历史", "v": "/genre/history"}, + {"n": "传记", "v": "/genre/biography"}, + {"n": "犯罪", "v": "/genre/crime"}, + {"n": "西部", "v": "/genre/western"}, + {"n": "奇幻", "v": "/genre/fantasy"}, + {"n": "音乐", "v": "/genre/music"}, + {"n": "歌舞", "v": "/genre/musical"}, + {"n": "家庭", "v": "/genre/family"}, + {"n": "运动", "v": "/genre/sport"}, + {"n": "古装", "v": "/genre/costume"}, + {"n": "武侠", "v": "/genre/martial"}, + {"n": "都市", "v": "/genre/urban"}, + {"n": "灾难", "v": "/genre/disaster"}, + {"n": "其他", "v": "/genre/other"}, + ] + common_area_values = [ + {"n": "全部", "v": ""}, + {"n": "中国", "v": "/region/china"}, + {"n": "美国", "v": "/region/usa"}, + {"n": "日本", "v": "/region/japan"}, + {"n": "韩国", "v": "/region/korea"}, + {"n": "英国", "v": "/region/uk"}, + {"n": "法国", "v": "/region/france"}, + {"n": "德国", "v": "/region/germany"}, + {"n": "印度", "v": "/region/india"}, + {"n": "意大利", "v": "/region/italy"}, + {"n": "西班牙", "v": "/region/spain"}, + {"n": "加拿大", "v": "/region/canada"}, + {"n": "澳大利亚", "v": "/region/australia"}, + {"n": "俄罗斯", "v": "/region/russia"}, + {"n": "泰国", "v": "/region/thailand"}, + {"n": "中国香港", "v": "/region/hongkong"}, + {"n": "中国台湾", "v": "/region/taiwan"}, + {"n": "中国澳门", "v": "/region/macau"}, + {"n": "其他", "v": "/region/other"}, + ] + common_year_values = [ + {"n": "全部", "v": ""}, + {"n": "2026", "v": "/year/2026"}, + {"n": "2025", "v": "/year/2025"}, + {"n": "2024", "v": "/year/2024"}, + {"n": "2023", "v": "/year/2023"}, + {"n": "2022", "v": "/year/2022"}, + {"n": "2021", "v": "/year/2021"}, + {"n": "2020", "v": "/year/2020"}, + {"n": "2019", "v": "/year/2019"}, + {"n": "2018", "v": "/year/2018"}, + {"n": "2017", "v": "/year/2017"}, + {"n": "2016", "v": "/year/2016"}, + {"n": "2015", "v": "/year/2015"}, + {"n": "2014", "v": "/year/2014"}, + {"n": "2013", "v": "/year/2013"}, + {"n": "2012", "v": "/year/2012"}, + {"n": "2011", "v": "/year/2011"}, + ] self.filter_def = { "movie": {"cateId": "movie"}, "series": {"cateId": "series"}, @@ -36,9 +103,9 @@ class Spider(BaseSpider): } self.filters = { key: [ - {"key": "class", "name": "剧情", "init": "", "value": [{"n": "全部", "v": ""}]}, - {"key": "area", "name": "地区", "init": "", "value": [{"n": "全部", "v": ""}]}, - {"key": "year", "name": "年份", "init": "", "value": [{"n": "全部", "v": ""}]}, + {"key": "class", "name": "剧情", "init": "", "value": list(common_class_values)}, + {"key": "area", "name": "地区", "init": "", "value": list(common_area_values)}, + {"key": "year", "name": "年份", "init": "", "value": list(common_year_values)}, { "key": "by", "name": "排序",