Python爬虫人工智能教程:www.python88.cn <http://www.python88.cn>

编程资源网:www.python66.cn <http://www.python66.cn>

本文讲述爬取抖音APP视频数据(本文未完,后面还有很多地方优化总结)

公众号回复:抖音

即可获取源码

相关资料都已经传于Python社区网站,网站搜索即可获取

Python社区网站:www.python88.cn <http://www.python88.cn> ,
包含全套教程,Python、爬虫、web、数据分析、机器学习、深度学习等,欢迎一块学习交流



1、APP抓包教程,需要用到fiddler

fiddler配置和使用查看>>王者荣耀盒子APP抓包配置方法
<https://blog.csdn.net/weixin_41666747/article/details/80467330>

2、寻找返回用户aweme_count和uid数据的接口

进入我关注的抖音用户主页,找到用户的抖音号并记录下来,该抖音号为unique_id(unique_id区别于uid)

用户主页有如下数据:如图所示

注:该页面并没有返回我们需要的uid数据,需要通过如下方式搜索,在另外一个页面抓包才能获取



抖音主页点击搜索图标



输入用户主页获取到的unique_id值,并点击搜索



进入该页面,切换到用户栏,该页面会返回我们需要的数据和接口



fiddler抓包,该接口返回我们需要的两个参数,作品数aweme_count和用户uid



上代码,input输入的为用户主页的unique_id,传入下面的方法中



拿到unique_id,我们请求接口,提取我们需要的数据aweme_count和uid,并打印成功,这一步结束

注:本网站为HTTPS加密,需要加verify=False参数,并要加headers



 

3、接下来寻找视频播放页面接口

手机切换到用户主页,会出现我们需要抓包的接口,因为用户主页有视频,自然接口在这里面



抓包,成功抓到下面图中所示的share_url接口,该接口需要我们传2个参数,就是上一步我们获取到的aweme_count和uid

注:share_url并不是最终我们真正下载视频的接口,需要对share_url返回的数据进一步提取,才能找到真正的视频接口



上代码,但该接口测试一些发现有些不方便用,经查阅网上一些资料,发现需要用到抖音之前的老接口,如代码中所示



这里获取得到的video_urls是一个假的视频接口,需要进一步提取真的视频接口



将video_urls传进下载视频的方法中,中间我调用了get_download_url方法,进一步提取真正的视频接口



提取真正视频接口,通过get请求假接口,在返回的一大坨响应中通过正则匹配提取







这里简单截图了两个视频接口的区别,这幅图是假的视频接口,虽然也有视频,但并不是真正的



下面这个才是我们真正的视频接口,整个页面只有一个视频,直接下载视频数据



 

至此,抖音爬取告一段落,还遗留两个问题,尚未完全搞出来

1、如何获取所有用户的抖音unique_id,而不必手动每次去查看后输入

2、如何去水印

这两个问题也已经尝试,没有那么容易,有兴趣的同学欢迎测试,有思路欢迎探讨

欢迎添加好友学习探讨,备注(CSDN)



 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信