抖音爬虫教程,一文讲透原理
声明: 本文只做技术研究,请勿用于任何非法用途。
最近有不少小伙伴投入短视频赛道,也出现不少第三方数据商,为大家提供抖音爬虫数据。 小伙伴们有没有好奇过,这些数据是如何获取的,普通技术小白能否也拥有自己的抖音爬虫呢? 本文会全面解密抖音爬虫的幕后原理,不需要任何编程知识,还请耐心阅读。
短视频直播数据采集接口SDK请点击查看接口文档
在制作爬虫前,首先需要了解,爬虫数据是怎么获得的。 以抖音 APP 为例,我们从抖音上看视频,和我们从浏览器上访问网站原理是一样的。 都是通过标准的 HTTP 请求来交互。 那么什么是 HTTP 请求呢?
HTTP 请求其实非常简单,可以理解为规定好格式的一组文字消息。请求消息中一般包含三样东西:
- 请求网址 (URL),例如抖音 APP 后台网址
- 你要做的事情 (请求参数), 例如是浏览,点赞还是上传视频等
- 你的身份信息 (Cookie) 和校验信息 (Token),表明你是谁,你请求合法吗
抖音服务器收到 HTTP 请求后,会先验证合法性,然后按照你的要求,配合你的身份和地理位置等,给你回复规定格式的文本消息。
我们以安卓 10.6 版首页推荐视频为例,来看一个真实的抖音请求流程:
上图是通过抓包软件抓取的首页推荐视频请求数据。可以看出,当你一打开抖音,APP 就会自动向抖音服务器发送一条 HTTP 请求消息。 图中蓝色箭头可以看出,请求是向 aweme-hl.snssdk.com/aweme/v2/fe… 这个网址发送的 (URL)。 黄色箭头标出该 HTTP 请求包含了地理位置信息 (请求参数),以及身份信息 (Cookie)。 抖音服务器收到请求后,就知道你是谁,你在哪里,你要干什么。然后会将红色箭头中的视频推荐数据回复给你。 点开回复数据,可以看到其中包含了视频 ID,标题,描述,点赞量,评论等多种信息。
有的读者可能注意到一串\\350\\241\\250\\346\\203\\205
这样奇怪的数字,这其实是一种叫 UTF-8 的编码方式。 可以简单理解为每三组 \\xxx 组成一个中文字符。比如上面这串数字翻译过来就是表情
两个字。
抖音 APP 通过读取回复消息,就知道该给我们展示哪些视频了。 但此时并没有结束,APP 还要根据返回的视频 ID,额外做两次 HTTP 请求,以获得需要展示的视频数据和缩略图信息,这样才能真正给我们展示首页推荐视频。
小伙伴们读到这里,应该明白整个抖音数据的请求流程了。俗话说纸上得来终觉浅,我们就以抖音点赞为例,手把手教大家怎样抓取和查看一个真实的 HTTP 请求包。
首先,需要下载 HttpCanary 抓包软件,可以从 Google Play 或者 Apkpure 里下载。安装完成后,重启手机,就可以开始抓包了。
先打开抖音 APP,再打开 HttpCanary,开始抓取抖音数据。如下图所示:
随便找个视频点赞,可以看到 HttpCanary 在不停的抓包。点开 HttpCanary,找带有 /aweme/v1/commit
字样的请求包:
点开请求包,可以看到,这其实是一个普通 HTTP 报文,红线部分表示需要点赞的视频 ID。
请求信息中除了包含视频 ID 外,还包含了你的身份信息,这样抖音才知道这个视频是谁在点赞。
然后 APP 通过查看回复消息,判断点赞请求是否成功,如果成功,就可以将视频边上的小红心点亮了。
通过点赞数据包,我们可以清楚看到,抖音所有浏览,点赞,评论,发布视频等,其实都是通过一个个 HTTP 完成的。
讲了那么多 HTTP 请求原理,对于普通小白来说,我们怎样才能做一个属于自己的爬虫呢? 其实很简单,只要照猫画虎,复制抖音 HTTP 请求,再原样发送就可以。 比如我想获取推荐视频,只要复制抖音推荐视频的 HTTP 请求,再原样发送就可以拿到推荐数据了。 本节我们就以上文中的点赞数据为例,请大家亲手做一个自动点赞的爬虫。 让我们先回到抖音,把刚才那个视频的点赞取消,这样才能看到爬虫的最终效果。
进入 HttpCanary,找到刚才的点赞包,点击右上角分享按钮,并选择分享 cURL,如下图所示:
复制完成后,HttpCanary 会提示检测到一个 cURL 请求,选择执行即可。
可以看到,HttpCanary 发送了一模一样的点赞请求给抖音。点开查看回复数据,如果和上文的返回值一样,就表明你的点赞爬虫完成啦。
此时回到抖音 APP,查看我喜欢的视频,就可以看到刚才取消点赞的视频又回来了。
通过刚才的练习,可以看到,只要我们能原样复制抖音数据包,就可以拿到所有想要的数据。 例如,复制首页视频请求,我们就能拿到推荐视频的标题,说明,点赞数量,评论数量等各种各样的数据。 小伙伴们也许有疑问,我们怎样才能搜集全部抖音数据呢?鉴于目前抖音的火爆程度,想要全部收集完其实不太可能,也没有必要。 聪明的小伙伴一定想到了,我们只要向抖音不停发送上划请求,就可以搜集很多首页推荐数据了。 如果你想做的更全能一些,还可以复制查看单用户视频的请求,把所有热门账号的视频数据都采集下来,就基本能替代第三方数据商了。 此外,你还可以修改 HTTP 请求,比如在首页请求中修改不同的地理位置,就可以看到不同地区的推荐视频和同城视频了。
看到这里,相信很多小伙伴已经跃跃欲试,准备大干一番了。但是别急,程序员小哥哥们可不会轻易让你们得逞。如果大家能随意点赞评论的话,抖音生态系统早就被玩坏了。 那么难点在哪里呢?我们还是回到刚才的请求包上,仔细看下图:
其实抖音每一次 HTTP 请求,都会带上 x-khronos 和 x-gorgon 这两个参数。抖音会在每次请求中校验这两个参数,如果校验不通过,那么请求就无效啦。 这两个参数都干了什么呢? 第一个 x-khronos
,是标识请求时间,采用 Unix 时间格式。比如 1586446631,表示离 1970 年 1 月 1 日 0 点 0 分过去 1586446631 秒,也就是 2020 年 4 月 9 日 23 点 37 分。如果抖音收到的请求时间离实际时间太远,就知道这个请求已经失效。 第二个 x-gorgon
,用来校验请求合法性。如果你在请求中篡改了任何数据,比如篡改了点赞 ID,或者身份信息 (Cookie),这个请求都会被抖音查出是伪造的,就能有效防止用户乱刷数据了。 好奇宝宝们一定会问,这个 x-gorgon
是怎么算出来的呢?理论上和法律上来说,只有抖音小哥哥们才知道。不过一般情况,都是通过请求时间,请求 URL 和 Cookie 等信息综合计算得出的(以上纯属瞎猜,请遵守当地法律)。
简单一句话概括,只需要复制抖音 HTTP 请求,并完成 x-gorgon
校验,理论上你就可以做一个全能的抖音爬虫。不过再次提醒小伙伴们,一定要谨遵当地法律,也不要滥用爬虫给平台造成负担。
短视频、直播电商数据采集、分析服务,请联系微信:1764328791 免责声明:本文档仅供学习与参考,请勿用于非法用途!否则一切后果自负。
声明: 本文只做技术研究,请勿用于任何非法用途。
最近有不少小伙伴投入短视频赛道,也出现不少第三方数据商,为大家提供抖音爬虫数据。 小伙伴们有没有好奇过,这些数据是如何获取的,普通技术小白能否也拥有自己的抖音爬虫呢? 本文会全面解密抖音爬虫的幕后原理,不需要任何编程知识,还请耐心阅读。
在制作爬虫前,首先需要了解,爬虫数据是怎么获得的。 以抖音 APP 为例,我们从抖音上看视频,和我们从浏览器上访问网站原理是一样的。 都是通过标准的 HTTP 请求来交互。 那么什么是 HTTP 请求呢?
HTTP 请求其实非常简单,可以理解为规定好格式的一组文字消息。请求消息中一般包含三样东西:
- 请求网址 (URL),例如抖音 APP 后台网址
- 你要做的事情 (请求参数), 例如是浏览,点赞还是上传视频等
- 你的身份信息 (Cookie) 和校验信息 (Token),表明你是谁,你请求合法吗
抖音服务器收到 HTTP 请求后,会先验证合法性,然后按照你的要求,配合你的身份和地理位置等,给你回复规定格式的文本消息。
我们以安卓 10.6 版首页推荐视频为例,来看一个真实的抖音请求流程:
上图是通过抓包软件抓取的首页推荐视频请求数据。可以看出,当你一打开抖音,APP 就会自动向抖音服务器发送一条 HTTP 请求消息。 图中蓝色箭头可以看出,请求是向 aweme-hl.snssdk.com/aweme/v2/fe… 这个网址发送的 (URL)。 黄色箭头标出该 HTTP 请求包含了地理位置信息 (请求参数),以及身份信息 (Cookie)。 抖音服务器收到请求后,就知道你是谁,你在哪里,你要干什么。然后会将红色箭头中的视频推荐数据回复给你。 点开回复数据,可以看到其中包含了视频 ID,标题,描述,点赞量,评论等多种信息。
有的读者可能注意到一串\\350\\241\\250\\346\\203\\205
这样奇怪的数字,这其实是一种叫 UTF-8 的编码方式。 可以简单理解为每三组 \\xxx 组成一个中文字符。比如上面这串数字翻译过来就是表情
两个字。
抖音 APP 通过读取回复消息,就知道该给我们展示哪些视频了。 但此时并没有结束,APP 还要根据返回的视频 ID,额外做两次 HTTP 请求,以获得需要展示的视频数据和缩略图信息,这样才能真正给我们展示首页推荐视频。
小伙伴们读到这里,应该明白整个抖音数据的请求流程了。俗话说纸上得来终觉浅,我们就以抖音点赞为例,手把手教大家怎样抓取和查看一个真实的 HTTP 请求包。
首先,需要下载 HttpCanary 抓包软件,可以从 Google Play 或者 Apkpure 里下载。安装完成后,重启手机,就可以开始抓包了。
先打开抖音 APP,再打开 HttpCanary,开始抓取抖音数据。如下图所示:
随便找个视频点赞,可以看到 HttpCanary 在不停的抓包。点开 HttpCanary,找带有 /aweme/v1/commit
字样的请求包:
点开请求包,可以看到,这其实是一个普通 HTTP 报文,红线部分表示需要点赞的视频 ID。
请求信息中除了包含视频 ID 外,还包含了你的身份信息,这样抖音才知道这个视频是谁在点赞。
然后 APP 通过查看回复消息,判断点赞请求是否成功,如果成功,就可以将视频边上的小红心点亮了。
通过点赞数据包,我们可以清楚看到,抖音所有浏览,点赞,评论,发布视频等,其实都是通过一个个 HTTP 完成的。
讲了那么多 HTTP 请求原理,对于普通小白来说,我们怎样才能做一个属于自己的爬虫呢? 其实很简单,只要照猫画虎,复制抖音 HTTP 请求,再原样发送就可以。 比如我想获取推荐视频,只要复制抖音推荐视频的 HTTP 请求,再原样发送就可以拿到推荐数据了。 本节我们就以上文中的点赞数据为例,请大家亲手做一个自动点赞的爬虫。 让我们先回到抖音,把刚才那个视频的点赞取消,这样才能看到爬虫的最终效果。
进入 HttpCanary,找到刚才的点赞包,点击右上角分享按钮,并选择分享 cURL,如下图所示:
复制完成后,HttpCanary 会提示检测到一个 cURL 请求,选择执行即可。
可以看到,HttpCanary 发送了一模一样的点赞请求给抖音。点开查看回复数据,如果和上文的返回值一样,就表明你的点赞爬虫完成啦。
此时回到抖音 APP,查看我喜欢的视频,就可以看到刚才取消点赞的视频又回来了。
通过刚才的练习,可以看到,只要我们能原样复制抖音数据包,就可以拿到所有想要的数据。 例如,复制首页视频请求,我们就能拿到推荐视频的标题,说明,点赞数量,评论数量等各种各样的数据。 小伙伴们也许有疑问,我们怎样才能搜集全部抖音数据呢?鉴于目前抖音的火爆程度,想要全部收集完其实不太可能,也没有必要。 聪明的小伙伴一定想到了,我们只要向抖音不停发送上划请求,就可以搜集很多首页推荐数据了。 如果你想做的更全能一些,还可以复制查看单用户视频的请求,把所有热门账号的视频数据都采集下来,就基本能替代第三方数据商了。 此外,你还可以修改 HTTP 请求,比如在首页请求中修改不同的地理位置,就可以看到不同地区的推荐视频和同城视频了。
看到这里,相信很多小伙伴已经跃跃欲试,准备大干一番了。但是别急,程序员小哥哥们可不会轻易让你们得逞。如果大家能随意点赞评论的话,抖音生态系统早就被玩坏了。 那么难点在哪里呢?我们还是回到刚才的请求包上,仔细看下图:
其实抖音每一次 HTTP 请求,都会带上 x-khronos 和 x-gorgon 这两个参数。抖音会在每次请求中校验这两个参数,如果校验不通过,那么请求就无效啦。 这两个参数都干了什么呢? 第一个 x-khronos
,是标识请求时间,采用 Unix 时间格式。比如 1586446631,表示离 1970 年 1 月 1 日 0 点 0 分过去 1586446631 秒,也就是 2020 年 4 月 9 日 23 点 37 分。如果抖音收到的请求时间离实际时间太远,就知道这个请求已经失效。 第二个 x-gorgon
,用来校验请求合法性。如果你在请求中篡改了任何数据,比如篡改了点赞 ID,或者身份信息 (Cookie),这个请求都会被抖音查出是伪造的,就能有效防止用户乱刷数据了。 好奇宝宝们一定会问,这个 x-gorgon
是怎么算出来的呢?理论上和法律上来说,只有抖音小哥哥们才知道。不过一般情况,都是通过请求时间,请求 URL 和 Cookie 等信息综合计算得出的(以上纯属瞎猜,请遵守当地法律)。
简单一句话概括,只需要复制抖音 HTTP 请求,并完成 x-gorgon
校验,理论上你就可以做一个全能的抖音爬虫。不过再次提醒小伙伴们,一定要谨遵当地法律,也不要滥用爬虫给平台造成负担。
同类文章排行
- 关于印发《企业会计准则解释第17号》的通
- 案例展示二
- 案例展示四
- 案例展示七
- 视频展示三
- 王健林又悄悄卖了几家万达广场!保险、信托
- 【热岗/编制】南宁市疾病预防控制中心/实
- 为什么互联网产品越来越难做了?
- 生产基地三
- 贯彻《全民科学素质行动规划纲要(2021
最新资讯文章
- 出国留学硕士研究生推荐信范文
- 2021英国32所大学的A-level/
- 行业深度!一文了解2021年中国留学服务
- 国际商务
- 2022美术生就业前景最好的专业
- 加拿大留学最好的大学有哪些学校
- 新西兰留学买教材怎样省钱
- 英语本科生必须要过英语专业八级吗
- 最新出国留学推荐信范文_1
- 英语专业留学读研英国几年
- 【分享】非985非211,30+岁换专业
- 申请攻读博士学位研究生相关模板资料(包括
- 商务英语专业就业前景和就业方向 毕业以后
- 出国留学介绍信英文
- 学摄影去哪留学好?重磅国家推荐
- 美术生出国留学哪里好_1
- 2024年新高考选科指南!(附上12种选
- 助力求职者端牢饭碗——从好就业到就好业
- 留学申请推荐信范文大全
- 教育部印发《关于深入推进学术学位与专业学