影刀RPA 视频信息批量抓取:时长播放量标题一步提取

影刀RPA 视频信息批量抓取:时长播放量标题一步提取 影刀RPA 视频信息批量抓取时长播放量标题一步提取作者林焱做视频运营的需要监控自己和竞品的视频数据。这篇讲怎么用影刀批量抓取B站、抖音等平台的视频公开信息标题、播放量、点赞、时长等全部用公开接口不需要登录。B站视频信息抓取importrequestsdefget_bilibili_video_info(bv_id):获取B站视频信息公开接口urlfhttps://api.bilibili.com/x/web-interface/viewparams{bvid:bv_id}headers{User-Agent:Mozilla/5.0 ...,Referer:https://www.bilibili.com/}resprequests.get(url,paramsparams,headersheaders)dataresp.json()ifdata[code]!0:print(f获取失败: BV号{bv_id})returnNonestatdata[data][stat]infodata[data][video(video-caXRbmaj-1784927405761)(type-csdn)(url-https://live.csdn.net/v/embed/526818)(image-https://v-![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/ff07fe1b5dfe453ca90ffcbd08afda6c.png#pic_center)blog.csdnimg.cn/asset/582d14c3bd0451c5399cd990b56e2a0d/cover/Cover0.jpg)(title-拼多多店群自动化报活动上架)]return{BV号:bv_id,标题:info[title],播放量:stat[view],弹幕数:stat[danmaku],评论数:stat[reply],收藏数:stat[favorite],点赞数:stat[like],硬币数:stat[coin],分享数:stat[share],时长:format_duration(info[duration]),# 秒转分:秒发布时间:datetime.fromtimestamp(info[pubdate]).strftime(%Y-%m-%d)}defformat_duration(seconds):minutesseconds//60secsseconds%60returnf{minutes}:{secs:02d}批量抓取从B站UP主视频列表defget_up_videos(mid,page1,page_size50):获取UP主的所有视频urlhttps://api.bilibili.com/x/space/arc/searchparams{mid:mid,# UP主UIDps:page_size,# 每页数量pn:page,# 页码order:pubdate# 按发布时间排序}headers{Referer:https://space.bilibili.com/}resprequests.get(url,paramsparams,headersheaders)dataresp.json()ifdata[code]!0:return[]videos[]forvindata[data][list][vlist]:videos.append({标题:v[title],BV号:v[bvid],播放量:v[play],评论数:v[comment],时长:v[length],发布时间:datetime.fromtimestamp(v[created]).strftime(%Y-%m-%d)})returnvideos# 抓取某UP主全部视频uid123456# UP主的UIDall_videos[]forpageinrange(1,10):# B站最多显示前几页videosget_up_videos(uid,page)ifnotvideos:breakall_videos.extend(videos)time.sleep(0.5)print(f共抓到{len(all_videos)}个视频)抖音视频信息公开搜索defsearch_douyin(keyword):抖音搜索简化版实际需要处理cookie和签名# 注意抖音的接口有加密参数纯requests方案不稳定# 推荐用影刀浏览器自动化代替# 影刀方案# 1. 打开抖音网页版搜索页![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6697a23f53b7418980f0514f48f99fb8.png#pic_center)# 2. 输入关键词搜索# 3. 等待视频列表加载# 4. 循环提取每个视频卡片的信息# 5. 翻页继续pass踩坑实录坑1B站API有限频B站公开接口虽然没有官方文档的限频说明但实测同一IP短时间内大量请求会返回412错误。翻页间隔0.5秒大批量抓取用代理池。坑2BV号和AV号互转老视频用的是AV号纯数字新视频是BV号。互转方法# AV → BV不提供公开算法用API间接获取infoget_bilibili_video_info(bv_id)# 返回中包含了aid# BV → AVinfo里有aid字段[video(video-quibIt6x-1784927412562)(type-csdn)(url-https://live.csdn.net/v/embed/526817)(image-https://v-blog.csdnimg.cn/asset/1d3c3709da119dd8c13ab01e9b282520/cover/Cover0.jpg)(title-TEMU店群矩阵自动化运营核价报活动)]print(info[aid])坑3抖音需要cookie抖音的很多接口需要携带cookie即使不登录也需要。如果用requests方案需要先在浏览器里登录抖音把cookie导出。更推荐直接用影刀浏览器操作。坑4播放量在短时间内不会实时更新B站的播放量不是实时的有几分钟到几小时的缓存延迟。如果你的监控间隔很短比如每5分钟查一次会发现数据没变化——不是接口出问题了是B站后端没更新。数据分析视频表现对比# 计算互动率forvinvideos:v[互动率]round((v[点赞数]v[评论数]v[收藏数]v[分享数])/max(v[播放量],1)*100,2)# 按互动率排序topsorted(videos,keylambdav:v[互动率],reverseTrue)[:10]fori,vinenumerate(top):print(f{i1}.{v[标题]}— 互动率{v[互动率]}%)写在最后视频数据抓取是内容运营的基础能力。B站的API相对友好公开、稳定抖音的接口加密较严格。影刀浏览器自动化可以绕过加密参数的问题适合小批量、低频的监控场景。大批量采集用API方案更高效。