|
@@ -329,14 +329,30 @@ class ZhongQingKanDianRecommend:
|
|
|
)
|
|
|
self.LocalLog.error(f"处理视频对象时发生异常: {e}\n{tb_info}")
|
|
|
|
|
|
-
|
|
|
def convert_number(self, s):
|
|
|
- if not isinstance(s, str):
|
|
|
+ """解析数字字符串,处理包含'万'的情况"""
|
|
|
+ if isinstance(s, int): # 如果已经是int,直接返回
|
|
|
return s
|
|
|
- try:
|
|
|
- return float(s.strip('万')) * 10000 if '万' in s else int(s)
|
|
|
- except ValueError:
|
|
|
- self.LocalLog.info(f"无法将 '{s}' 转换为有效的数字。")
|
|
|
+ elif isinstance(s, str): # 如果是字符串,处理'万'
|
|
|
+ if '万' in s:
|
|
|
+ try:
|
|
|
+ num = float(s.strip('万')) * 10000
|
|
|
+ return int(num) if num.is_integer() else num # 整数返回int,小数返回float
|
|
|
+ except ValueError:
|
|
|
+ print(f"无法将 '{s}' 转换为有效的数字。")
|
|
|
+ return 0 # 默认返回0或其他默认值
|
|
|
+ else:
|
|
|
+ try:
|
|
|
+ return int(s) # 尝试转换为int
|
|
|
+ except ValueError:
|
|
|
+ try:
|
|
|
+ return float(s) # 尝试转换为float
|
|
|
+ except ValueError:
|
|
|
+ print(f"'{s}' 不是有效的数字格式。")
|
|
|
+ return 0 # 默认返回0或其他默认值
|
|
|
+ else:
|
|
|
+ print(f"不支持的类型: {type(s).__name__}")
|
|
|
+ return 0 # 非int/str类型返回默认值
|
|
|
|
|
|
|
|
|
def run(self):
|
|
@@ -357,6 +373,6 @@ if __name__ == '__main__':
|
|
|
ZhongQingKanDianRecommend(
|
|
|
platform="zhongqingkandian",
|
|
|
mode="recommend",
|
|
|
- rule_dict={'videos_cnt': {'min': 2, 'max': 0}, 'duration': {'min': 30, 'max': 1200}},
|
|
|
+ rule_dict={'videos_cnt': {'min': 200, 'max': 0}, 'duration': {'min': 30, 'max': 1200}},
|
|
|
user_list=[{"uid": 81522822, "link": "中青看点推荐", "nick_name": "免不了俗"}]
|
|
|
).run()
|