问答
抖音爬虫的签名又失效了,是继续修还是换数据接口?
简短回答
团队里有人乐意逆向抖音的网页签名、而且采集量非常大,就修;这周就要拿到数据,就换。okdata 上同样的任务不用签名也不用 Cookie:抖音搜索每次 $0.02,按分享链接取视频每次 $0.002,评论每页约 20 条、$0.002。
抖音网页端的接口要求请求带签名和一组 Cookie,抖音一更新前端 JS,这两样就跟着变,开源项目往往一起挂。有个下载项目的用户直接问是不是不维护了,换了 Cookie 也解析不了;另一个工具则发现抖音的某个数据接口已经下线。这种问题很少一行代码能修好,修好之后下一次失效也只是时间问题。
继续修,要付出什么
- 一个能读混淆 JS、把签名算法重新实现出来的人,往往要好几天。
- 新的 Cookie;量大的话,还要没被风控盯上的账号和代理。
- 抖音每改一次就重来一遍,而且不会提前通知。
对采集量极大、或者把采集当核心技术来做的团队,这是合理的投入。对周五就要交的营销报告来说,这是最贵的选项。
换接口,同样的任务多少钱
| 任务 | 接口 | 价格 |
|---|---|---|
| 关键词搜索 | 抖音视频搜索 | 每页约 20 条,$0.02 |
| 用分享链接取一个视频 | 抖音视频详情 | $0.002 |
| 评论 | 抖音视频评论 | 每页约 20 条,$0.002 |
| 账号的作品 | 抖音账号作品列表 | 每页约 20 条,$0.002 |
一份周报,20 次搜索、100 个视频详情、200 页评论,合计 {{cost:douyin.videos.search20+douyin.videos.get100+douyin.videos.comments.list*200}}。
# v.douyin.com 分享链接直接传;你这边不用管 a_bogus、msToken、ttwid
curl -G "https://api.okdata.online/v1/douyin/videos/get" \
-H "Authorization: Bearer $OKDATA_API_KEY" \
--data-urlencode 'url=https://v.douyin.com/xxxxxx/'
换之前想清楚
- 只有公开数据。爬虫以前通过登录态读到的东西,比如你自己账号的后台数据,这里拿不到。
- 抖音页面上不公开显示的数字返回 null,
meta.unavailable会注明;这次调用仍是正常返回,照常计费。 - 上游数据源出问题时,返回
upstream_failed或upstream_busy,都不扣费,稍后重试即可。修的活儿不再是你的。
官方的路
抖音开放平台走的是 账号主人授权的 OAuth 权限。如果你只需要愿意授权给你应用的账号的数据,比如自家品牌号,就用它。要看别人账号的公开数据,可以参考竞品监测里的做法。
更新于