小米
背景
- 国内应用宝广告主信息的抓取
分析
- 分类分析
- 在小米应用商店中应用分类
- 游戏15、实用工具5、影音视听27、聊天社交2、图书阅读7、学习教育12、效率办公10、时尚购物9、居家生活4、旅行交通3、摄影摄像6、医疗健康14、体育运动8、新闻资讯11、娱乐消遣13、金融理财1
- 对游戏有进行了细分
- 战争策略16、动作枪战17、赛车体育18、网游RPG19、棋牌桌游20、格斗快打21、儿童益智22、休闲创意23、飞行空战25、跑酷闯关26、塔防迷宫28、模拟经营29
- 后续需要深入调研应用分类中的游戏是否包含了所有游戏
- 在小米应用商店中应用分类
- 请求分析
- 每个页面显示30条应用信息,并且在点击下一页的时候只是局部刷新,请求url并没有发生改变,可以确定是在确定的某一分类下是ajax异步请求
- http://app.mi.com/categotyAllListApi?page=9&categoryId=15&pageSize=30
- Page 当前页数
- categoryId 当前分类Id
- pageSize 请求数量
- 需要注意的是在小米应用商店中所有应用都显示的67页,但是真正的app数量并没有那么多,所以在后续抓取时,对页码累加,当返回为空时停止
- 响应分析
- 返回的是json格式数据data[]中是当前页码请求的响应app
- {"appId":647764,"displayName":"小小驱魔师","icon":"http://file.market.xiaomi.com/thumbnail/PNG/l62/AppStore/06becf53deabb454109e6a26710d66068b0eae0d0","level1CategoryName":"动作枪战","packageName":"com.PlayPlayFun.LittleExorcist.mt"}
- 其中:我们需要的有
- displayName:应用名称
- icon:图标链接
- level1CategoryName:应用分类
- packageName:包名
- 后续添加落地页:http://app.mi.com/details?id=包名