抖音全站爬虫 douyin spider

  • 2018-06-14
  • 1,612
  • 10
  • 4

方法已失效,更新待定


以下内容仅供学习交流之用,如有造成不良后果请自负


抖音作为月活用户近亿的app,对部分请求的合法性验证竟然没有,而这些没有验证的接口就是可以拿到抖音全站公开数据的接口

玩过抖音的应该都知道,抖音有个分享功能。通过分享功能分享用户主页是可以拿到每个用户喜欢的视频id、点赞数等以及用户公开数据。

抖音的用户ID有两种,一个是app内显示的shortid, 一个是分享时显示的userid,通过shortid是很难拿到数据的,但是分享功能只能拿到shortid。这样爬虫不能增量爬取,没什么用,除非有个用户能把抖音全视频点赞

简陋的web网页拿不下来只能从app入手,抓包分析一个app远没有web简单。

抓包过程中会发现抖音有个feed接口,一次请求能拿到好几条数据,其实我告诉你,没用

这里有个取巧的办法,通过分享的用户主页点击某条用户点赞的视频抓app的包能拿到需要的数据,也就是视频id获取userid

至此所有需要的数据以及接口都出来的增量爬取也就可以实现了

截至发稿时,博主单线程爬取12w,视频下载4w

代码地址

评论

  • Just回复

    这个api现在没用了吧

    • bankroft回复

      加了个参数,还是可以用。破解加密参数就行

      • Just回复

        破解好麻烦

        • bankroft回复

          我记得github有sdk,不过好像收费,你可以找找

  • 小爬虫回复

    评论的接口能说下么,多谢

    • bk回复

      UA:okhttp/3.7.0.6, 参数比较多,我没拿评论所以没研究参数作用,但是这里的参数应该都是需要的https://aweme.snssdk.com/aweme/v1/comment/list/?aweme_id=6570590650654264579&cursor=0&count=20&comment_style=2&ts=1529868522&app_type=normal&openudid=20474775b0bd5475&version_name=1.9.0&device_type=SM-G955N&ssmix=a&iid=36426879382&os_api=19&device_id=53333883690&resolution=720*1244&device_brand=samsung&aid=1128&manifest_version_code=190&app_name=aweme&_rticket=1529868522882&os_version=4.4.2&device_platform=android&version_code=190&update_version_code=1902&ac=wifi&dpi=240&uuid=354730010204745&language=zh&channel=aweGW&as=a1e5afe27aae7bd02f4355&mas=0078c42ff960b77293b84273e3da77d2d2acaccc2c664c0c2646ec

    • m回复

      我也想拿评论 ,奈何接口加密了 变动的参数有三个是必须的 不知道变动算法是什么,也懒得去反编译。。。

  • 老王回复

    “awemeid_to_userid”
    能透露一下接口吗

    • bk回复

      忘了复制api文件内容了

发表评论