douyin\bilibili\kuaishou 视频播放量

This commit is contained in:
dubingyan666 2025-10-05 20:05:14 +08:00
parent 23539014ca
commit 422c0135d1
3 changed files with 225 additions and 98 deletions

View File

@ -207,10 +207,10 @@ def _extract_calculation_params_b2(data: UserValuationCreate) -> Dict[str, Any]:
# 活态传承系数B21 县官参数
inheritor_level_coefficient = data.inheritor_level # 传承人等级
offline_sessions = int(data.offline_activities) #线下传习次数
# 以下调用API
douyin_views = "抖音播放量"
kuaishou_views= "快手播放量"
bilibili_views= "B站播放量"
# 以下调用API douyin\bilibili\kuaishou
douyin_views = universal_api.video_views("douyin",video_id="视频id未知")
kuaishou_views= universal_api.video_views("kuaishou",video_id="视频id未知")
bilibili_views= universal_api.video_views("bilibili",video_id="视频id未知")
# 跨界合作深度 品牌联名0.3科技载体0.5国家外交礼品1.0
cross_border_depth = float(data.cooperation_depth)

View File

@ -55,21 +55,19 @@ class APIConfig:
}
}
},
<<<<<<< HEAD
"justoneapi": {
"api_key": os.getenv("JUSTONEAPI_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
=======
"xiaohongshu": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
>>>>>>> b46c1a349b8413b2daf4a02b862ddcfde1953d76
"xiaohongshu_note_detail": {
"path": "/api/xiaohongshu/get-note-detail/v7",
"method": "GET",
@ -90,10 +88,155 @@ class APIConfig:
"description": "小红书笔记搜索",
"required_params": ["keyword"],
"optional_params": ["page", "size", "token"]
},
"weibo_user_detail": {
"path": "/api/weibo/get-user-detail/v1", # 微博只有粉丝数接口
"method": "GET",
"description": "获取用户信息 包括昵称、头像、用户ID、粉丝数、关注数、简介、认证状态等公开信息",
"required_params": ["token", "uid"],
"optional_params": ["token", "uid"]
},
"weixin_user_detail": {
"path": "/api/weixin/get-user-post/v1",
"method": "GET",
"description": "公众号发布的文章内容,包括标题、作者、发布时间、内容摘要以及阅读数、点赞数与转发数等互动数据",
"required_params": ["token", "wxid"],
"optional_params": ["token", "wxid"]
},
"douyin_video_detail": {
"path": "/api/douyin/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "videoId"],
"optional_params": ["token", "videoId"]
},
"kuaishou_video_detail": {
"path": "/api/kuaishou/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "videoId"],
"optional_params": ["token", "videoId"]
},
"bilibili_video_detail": {
"path": "/api/bilibili/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "bvid"],
"optional_params": ["token", "bvid"]
}
}
},
"weibo": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
"weibo_user_detail": {
"path": "/api/weibo/get-user-detail/v1", # 微博只有粉丝数接口
"method": "GET",
"description": "获取用户信息 包括昵称、头像、用户ID、粉丝数、关注数、简介、认证状态等公开信息",
"required_params": ["token", "uid"],
"optional_params": ["token", "uid"]
},
}
},
"weixin": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
"weixin_user_detail": {
"path": "/api/weixin/get-user-post/v1",
"method": "GET",
"description": "公众号发布的文章内容,包括标题、作者、发布时间、内容摘要以及阅读数、点赞数与转发数等互动数据",
"required_params": ["token", "wxid"],
"optional_params": ["token", "wxid"]
}
}
},
"douyin": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
"douyin_video_detail": {
"path": "/api/douyin/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "videoId"],
"optional_params": ["token", "videoId"]
}
}
},
"bilibili": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
"bilibili_video_detail": {
"path": "/api/bilibili/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "bvid"],
"optional_params": ["token", "bvid"]
}
}
},
"kuaishou": {
"api_key": os.getenv("XIAOHONGSHU_TOKEN", "YNSbIjdU"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"endpoints": {
"kuaishou_video_detail": {
"path": "/api/kuaishou/get-video-detail/v2",
"method": "GET",
"description": "该接口用于获取指定抖音视频的详细信息,包括视频地址、描述文案、作者信息、发布时间、播放量、点赞数、评论数与分享数等",
"required_params": ["token", "videoId"],
"optional_params": ["token", "videoId"]
}
}
},
"other_apis": {
"jizhiliao": {
"api_key": os.getenv("JIZHILIAO_API_KEY", "JZL089ef0b7d0315d96"),
"base_url": "https://api.justoneapi.com",
"timeout": 30,
"retries": 3,
"verifycode": os.getenv("JIZHILIAO_VERIFYCODE", ""),
"endpoints": {
"index_search": {
"path": "/fbmain/monitor/v3/web_search",
"method": "POST",
"description": "极致聊指数搜索",
"required_params": ["keyword", "mode", "BusinessType", "sub_search_type"],
"optional_params": ["key", "verifycode"]
},
}
},
"other": {
# 可以添加其他第三方API配置
"example_api": {
"api_key": os.getenv("EXAMPLE_API_KEY", ""),
"base_url": "https://api.example.com",
"endpoints": {}
}
},
"common_settings": {
"timeout": 60,
"retries": 3,
"sign_prefix": "634xz"
}
}
}
},
<<<<<<< HEAD
# 微信指数
"dajiala": {
"api_key": "",
@ -110,39 +253,6 @@ class APIConfig:
}
}
},
"other_apis": {
=======
"jizhiliao": {
"api_key": os.getenv("JIZHILIAO_API_KEY", "JZL089ef0b7d0315d96"),
"base_url": "https://www.dajiala.com",
"timeout": 30,
"retries": 3,
"verifycode": os.getenv("JIZHILIAO_VERIFYCODE", ""),
"endpoints": {
"index_search": {
"path": "/fbmain/monitor/v3/web_search",
"method": "POST",
"description": "极致聊指数搜索",
"required_params": ["keyword", "mode", "BusinessType", "sub_search_type"],
"optional_params": ["key", "verifycode"]
}
}
},
"other": {
>>>>>>> b46c1a349b8413b2daf4a02b862ddcfde1953d76
# 可以添加其他第三方API配置
"example_api": {
"api_key": os.getenv("EXAMPLE_API_KEY", ""),
"base_url": "https://api.example.com",
"endpoints": {}
}
},
"common_settings": {
"timeout": 60,
"retries": 3,
"sign_prefix": "634xz"
}
}
# 尝试从文件加载配置

View File

@ -153,13 +153,13 @@ class UniversalAPIManager:
if api_key:
prepared_params['token'] = api_key
<<<<<<< HEAD
elif provider == 'dajiala':
# 微信指数
# JustOneAPI需要token参数
api_key = provider_config.get('api_key')
if api_key:
prepared_params['key'] = api_key
=======
elif provider == 'jizhiliao':
# 极致聊接口需要 key默认从配置读取
if 'key' not in prepared_params or not prepared_params['key']:
@ -170,7 +170,7 @@ class UniversalAPIManager:
default_verifycode = provider_config.get('verifycode')
if default_verifycode is not None:
prepared_params['verifycode'] = default_verifycode
>>>>>>> b46c1a349b8413b2daf4a02b862ddcfde1953d76
return prepared_params
@ -257,6 +257,23 @@ class UniversalAPIManager:
}
return self.make_request('dajiala', 'web_search', data)
def video_views(self,platform_type,video_id):
"""
平台视频播放量
args:
platform_type: douyin\bilibili\kuaishou
"""
if platform_type == 'bilibili':
params = {
"bvid": video_id
}
else:
params = {
"videoId": video_id
}
return self.make_request('justoneapi', 'platform_type', params)
# 站长之家API的便捷方法
def query_copyright_software(self, company_name: str, chinaz_ver: str = "1") -> Dict[str, Any]: