抖音视频的爬取过程
抖音由于没有网页版只有APP导致一些想爬的人都放弃了去尝试,但是作为一个程序员不要怕麻烦。麻烦才是你产生bug的开始 - -
python环境:3.6
爬取前必要做的事(按照前后顺序)
首先我在这里先说明 我这里使用的python。**但是这篇文章重点是理解整个过程**。下面开始。
1. 首先我们先选择一个软件:
(1.**charles**(简称:花瓶),2.**fiddler**)我个人使用的是**charles**
charles :charles官方网址自行下载
Fiddler:fiddler官方网址自行下载
在这里我给大家一个Tips:
如果发现手机不能正常代理charles或者fiddler 我可以告诉你们一个肯定适配的
**苹果 + charles**设置肯定可以正常代理!!!!!(经历了几个月的惨痛教训得出来的真理)
2.代理配置和手机配置:
charles :charles代理配置官方网址自行下载
Fiddler:fiddler代理配置官方网址自行下载
这样就已经完成了一大半了 剩下的就看进入破解抖音的部分了,让我们来看看重点部分吧
抖音部分
在手机上下载抖音APP;
配置好后 要先打开charles 再打开抖音APP不然手机没有网,这其中类似于中间人代理的原理;
1.抖音随便查找一个用户然后点开它的用户界面
charles出现以下界面:
出现这样的图,点红箭头会出现这样图:
这就是用户的数据了,但是其实下面有几个会影响你的判断,我是直接给你们标出了,爬虫做多了你会有避开一定明显错误信息(多做,多尝试)
然后我们用在线的json解析工具解析一下这串json数据:
继续====》
找到我们需要的数据。我需要的是视频,所以我找我需要的视频url的位置,用户信息都是有的(耐心的找找就都有了):
这样我们基本的爬虫就结束了,就是这么的简单有木有。接下来就是一点代码了,由于某些原因不能展现全部代码我把关键的代码展示出来:
这边有三点很容易错误:
一、是headers(头部)尽量全一点在第二张图有全部的headers 你全搬过来就行了。
二、request一定要加verify=false 不然会报错。
三、数据是json数据要直接用request.json()解析,如果后续用json.dumps 或者 json.loads都没用。
这是其中的关键代码片:
url = '不敢放。在第二章图的 get 后面复制一下就行了'
headers = {
'User-Agent':'Aweme 8.6.0 rv:86018 (iPhone; iOS 12.3.1; zh_CN) Cronet',
'x-tt-trace-id':'00-5990d4d209cf8a1db8ebc1dd7c600468-5990d4d209cf8a1d-01',
'Connection': 'keep-alive',
'X-KHronos':'1573460693',//标示用户的 url通用的 每个用户都不一样
'X-Gorgon':'830099900000b7f5660d88c11c18d1ba30080507077bc534f0a9'//标示用户的 url通用的 标示用户的 url通用的 每个用户都不一样
}
resp = requests.get(url=url,headers=headers,verify=False)
text_json = resp.json()
print(text_json)
!!headers头部中的X-KHronos和X-Gorgon才是标示用户的,url都是一样的!!
做个简单的数据库 就可以大量的爬取了。记得换IP噢 - -
如果一些人卡在手机代理配置的过程中。那就一步一步来,勿急勿躁,做为一个程序猿要习惯这种感觉~