详细分析python3爬取max+新闻数据(一)

前言

max+是广大dota2水友最喜爱的app了,新闻资讯,比赛战绩,博彩竞猜,社区交友,视频直播等功能应有尽有。特别是新闻资讯版块,各路大神尽显神通抢占热评,摸鱼吹逼其乐无穷。是你拉屎读物的不二之选(咳)。对像我这种没时间打dota2,但是又深深热爱这个游戏的人来说,新闻版块就是我每天几十次打开这个app的理由。但是新闻数据只在手机app端才能看到,web端app是没有直接的入口的。接下来就为大家详细分析,如何抓取max+的新闻。

正文

由于是要抓取手机app端的新闻,抓包软件必不可少,另外选择一个安卓模拟器(用真的手机也行)。博主使用的是Fiddler抓包+夜神安卓模拟器。两款软件都能轻松下载安装。首先打开Fiddler我们需要设置允许远程设备连接,Tools-Options-Connections。在Allow remote computer to connect 前打勾,这样就能手机连接本地主机后就能抓包了,端口号就用默认的8888,如下图:

详细分析python3爬取max+新闻数据(一)_第1张图片

接下来设置手机的wlan,长按WiredSSID打开,选择修改网络:

详细分析python3爬取max+新闻数据(一)_第2张图片

显示高级选项,代理选择手动,在填入自己电脑的ip地址(可以在cmd中输入ipconfig查看),这样手机就可以通过8888端口和电脑连接了,如下图:

详细分析python3爬取max+新闻数据(一)_第3张图片

打开夜神模拟器,下载Max+,打开Max+进入发现版块:

详细分析python3爬取max+新闻数据(一)_第4张图片详细分析python3爬取max+新闻数据(一)_第5张图片


拖动屏幕往下滑,这时候就会发现Fiddler抓到的许多信息,有image 还有app/json等。我们主要看json,观察名字,找到一个很明显是我们所需要的东西:


详细分析python3爬取max+新闻数据(一)_第6张图片


查看一下这个请求的具体信息,在json中我们看到了所需要的东西。


详细分析python3爬取max+新闻数据(一)_第7张图片

在Chrome中打开这个之前请求定位到的url,发现其中带许多参数。去掉一些明显对页面不造成影响的,最后只剩下了limit和offset。从名字上就很容易猜出来这是文章列表的起始位置以及返回的json包含的文章数目限制。

我们将limit设置为1,慢慢测试offset,最后发现文章一共是10880篇,截止2018-04-01 15:13。

详细分析python3爬取max+新闻数据(一)_第8张图片

现在我们已经知道了文章的获取方式,接下来就是编写爬虫程序爬取数据了。

下一篇博文我们继续分析。

你可能感兴趣的:(python,爬虫)