菜鸟追梦

python抖音爬虫

2019-11-13  本文已影响0人  旅行_7b07


抖音视频的爬取过程

抖音由于没有网页版只有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噢 - -

如果一些人卡在手机代理配置的过程中。那就一步一步来,勿急勿躁,做为一个程序猿要习惯这种感觉~

其实我觉得爬虫难的不是写代码。难的是在于你看到你要爬的网站,APP是否在你心里有一套完成的流程。当然写代码的时间永远没有配置环境的时间长。抖音视频爬虫也可以用APPium模块(jdk,sdk,adb........) 手机模拟滑动来获取视频。但是!!!环境的配置会让你崩溃(可自行问度娘)。这篇文章希望能帮助大家。有时间我会写一篇关于微信小程序爬虫、验证码解决的方法。记得关注噢~

上一篇 下一篇

猜你喜欢

热点阅读