相关文章:
抖音 x-gorgon 03 免费生成接口
抖音爬虫从0到1-第一弹:环境配置
抖音爬虫从0到1-第二弹:获取抖音用户数据
如果你已经配置好环境(手机上安装好了抖音app并且抓包软件等也都配置好了),就可以开心食用下文,否则请查看环境配置然后再继续本文。
打开抖音,进入抖音发布者个人页面:(点击右方发布者头像进入发布者个人页面)
这个时候我们查看fiddle抓到的包,我们发现对应的数据的请求地址都是包含“aweme”样式的url,fiddle右上角就是我们的请求数据,右下角就是对应的响应数据:
因为我的爬取思路是根据用户的关注列表爬取关注列表的关注列表,所以我不太关注用户本身的数据,我更感兴趣的是用户的关注列表数据以及粉丝数据,那怎么看用户的关注列表呢?
这样我们就可以看到用户的关注列表了,那么对应的抓包软件抓到的包是什么呢:
从图中我们可以看到follower就是用户的粉丝数据,following就是用户关注的用户。对应的请求头和响应数据如下图所示:
我们首先分析请求数据:
请求数据包括对应的url(也就是api),对应的header数据,其中headers里面有Host、Connection、cookie、Accept-Encoding、X-SS-QUERIES、X-SS-REQ-TICKET、X-Tt-Token、sdk-version、User-Agent、X-Khronos、X-Gorgon、X-Pods
根据上面的api,我们发现大部分的数据我们是可以构造的,只有user_id以及加密的sec_user_id我们无法自己构造,但是我们可以通过用户的关注列表中获取到它关注的所有的用户的user_id和sec_user_id,所以我们只需要知道一个用户的user_id和sec_user_id,我们就可以获取和他关联的用户以及和他关联的用户的用户的user_id和sec_user_id。
通过分析请求头,我们发现大部分数据是不变的,而且我们都可以通过Fiddle获得,唯一不能获得的或者说会发生改变的是:X-Gorgon,通过反编译抖音APK,我们发现它是根据请求的url和cookies和token等生成的,我已经实现了对应的生成算法并且开放了一个X-Gorgon生成接口,大家可以免费获取,但是注意请求格式:具体请参考文章:抖音 x-gorgon 03 免费生成接口
这里贴一下对应的请求X-Gorgon的代码:
假设我们已经知道了我们自己的cookies和token以及我们请求的url那么我们可以获取到对应的X-Gorgon:
响应的数据的格式是json的,所以一般我们都将响应的数据转换成json进行处理,通过fiddle抓包我们可以看到响应数据主要包括下面几个部分,而关注的用户的信息都在“followers”里面。其他的字段主要用于翻页,因为一次请求只返回20条数据,响应数据的其他字段:has_more 表示的是是不是有更的数据,max_time就是下一页数据的游标,我们主要关注follower里的数据。
下面我们可以看到followers里面有20条数据,每一条数据里面就是一个用户的信息
下面就是具体的每一个用户的字段:
用户字段有很多,大多数对我来说都没有用,我只关注user_id 和 对应的 sec_uid,当然如果可以看自己的需求获取更多的数据,从上图我们发现我们可以获取到,因此我的目的就达到了,这样我就可以把它们存下来,下面再通过它俩请求这个用户关注的用户的这两个信息,下一篇文章我将主要介绍一下如何爬取视频信息。