抖音综合榜单数据爬虫案例 | 您所在的位置:网站首页 › 抖音热门榜单平台 › 抖音综合榜单数据爬虫案例 |
偶然在抖音创作平台中看到了一系列的排行榜,如热搜榜、热门视频榜、娱乐明星榜、音乐榜等等。 网页链接: https://creator.douyin.com/billboard/home 登陆后可见数据 以上接口是不能直接进行访问的,需要在请求的时候加上Referer,下面以《今日热门视频》数据为例 今日热门视频已知今日热门视频的数据接口 和请求方式,可以直接使用requests进行请求。 代码非常简单,请求其他的接口只需要更换 url 即可。 import requests hot_video_url = 'https://creator.douyin.com/aweme/v1/creator/data/billboard/?billboard_type=4' headers = { "user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36", "referer": "https://creator.douyin.com/billboard/hot_aweme" } response = requests.get(url=hot_video_url, headers=headers).json() print(response)返回数据示例: 在返回过来的数据中,可以看到并没有视频的详细内容, 只有作者名auhor,视频背景图 img_url,分享页链接link,排名rank,标题title,热度value。 当想要获得更多的视频信息,比如点赞、转发、评论 或者是 作者的信息,就需要通过其他接口来获取数据。 这里随便选择了一个分享链接Link: https://www.iesdouyin.com/share/video/6844023242781412622/?region=CN&mid=6844023258854345479&u_code=0&titleType=title (该接口可直接访问。只有一个 item_ids 参数,可以发现该item_ids和分享链接上video后面的id相同 ) 返回数据如下: 先获取《今日热门视频》集合,然后提取出每一个视频对应的item_ids,再根据id获取详细的视频数据 # -*- coding: utf-8 -*- import requests import re hot_video_url = 'https://creator.douyin.com/aweme/v1/creator/data/billboard/?billboard_type=4' headers = { "user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36", "referer": "https://creator.douyin.com/billboard/hot_aweme" } response = requests.get(url=hot_video_url, headers=headers).json() for video in response['billboard_data']: link = video['link'] # 分享页链接 title = video['title'] # 视频标题 rank = (video['rank']) # 当前排名 hot_value = video['value'] # 当前热度 items_ids = re.findall('video/(.*?)/', link)[0] # 获取详情数据需要的id video_detail_url = 'https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={}'.format(items_ids) detail = requests.get(video_detail_url,headers=headers).json() print(detail['item_list'][0]['share_url']) break # 只取1条,示例 刚看了一下更新了 2020/09/08部分接口需要在请求的时候加上cookie,否则会返回 {‘status_msg’: ‘无权限操作’} 可以把整个cookie都复制出来加到header中,也可以只复制里面到 sid_guard headers = { "user-agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36", "referer": "https://creator.douyin.com/billboard/hot_aweme", "cookie":"sid_guard=(这是个示范)" } |
CopyRight 2018-2019 实验室设备网 版权所有 |