天天看点

【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)

大年初七了还不开始学习嘛?

过年期间一直再在看斗鱼直播平台的直播,学习主播的操作(骚套路)想着等有机会也来实战一波。看着看着就很想分析一下到底哪些主播观看的人数比较多,又为啥会有这么多人看。所以我们就要用爬虫来采集斗鱼直播平台上的数据了。

  • 分析网页

    打开斗鱼直播平台网页按F12进行分析(此步骤不用教了吧),我们发现每翻动一页网址没有发生变化且代码中页数也不是具体的url而是(看图),所以我们就要通过抓包来分析数据到底是怎么加载过来的

    【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)
  • Fiddler抓包

    打开fiddler输入网址尝试点击下一页,对抓到的包进行分析。我们发现其将数据都存储到json文件中!而这些json格式的文件里就有我们需要的数据了。

    【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)
    【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)
  • 编写爬虫

    设置简易的header提取链接中json数据获取有用的信息。

import requests
url="https://www.douyu.com/gapi/rkc/directory/2_270/1"
header={
    "accept":" text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8", 
    "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0'
}
req=requests.get(url)#获取响应
x=req.json()#获取json数据 等同于json.loads(response.text)方法
for i in range(0,len(x['data']['rl'])):
    print(str(i)+":"+
          "主播名字:"+x['data']['rl'][i]['nn']+
          "    主播标题:"+x['data']['rl'][i]['rn']+
          "   火热度:"+str(x['data']['rl'][i]['ol'])+'\n'+
          "主播地址:"+"https://www.douyu.com"+x['data']['rl'][i]['url']+
          "  图片地址:"+x['data']['rl'][i]['rs1'])
           

结果展示

【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)
【Python爬虫】爬取斗鱼直播信息(Fiddler抓包分析)

其实爬虫就这么简单,欢迎指导交流哟

继续阅读