下午本来准备抓取些网页视频地址,做一个小的视频app,用来学习ijkplayer,无意中发现了一个app——姐夫酷,这是一个很简单的网页,它也有相应的一个比较简单的android app。 于是心血来潮,想把它的包抓取下来,以后可以拿来做些高仿项目,学习些新的技术。

对我来说抓包首选的当然是Fiddler,关于如何使用Fiddler,我不多介绍,可以参考利用利用Fiddler对Android模拟器网络请求进行抓包

在抓包前,我们可以先看下它的官方app,非常简单:一个可以滑动的导航菜单+列表:

然后抓取到的接口主要有四个:

导航菜单列表

请求地址:http://www.gifcool.com/appdata/getmenu.php

请求方法:GET

请求参数:无

响应:

{
"data": [
{
"sortrank": 10,
"id": 12,
"typename": "动态图",
"reid": 0,
"type": 1
},
{
"sortrank": 20,
"id": 5,
"typename": "小视频",
"reid": 0,
"type": 2
},
{
"sortrank": 30,
"id": 11,
"typename": "图文",
"reid": 0,
"type": 4
},
{
"sortrank": 40,
"id": 10,
"typename": "污段子",
"reid": 0,
"type": 3
},
{
"sortrank": 45,
"id": 2,
"typename": "美女",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 3,
"typename": "搞笑",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 4,
"typename": "碉堡",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 6,
"typename": "熊孩子",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 9,
"typename": "萌宠",
"reid": 12,
"type": 1
}
],
"msg": "成功",
"status": 200
}

根据分类的id获取到不同的列表项

请求地址:http://www.gifcool.com/appdata/getlist.php

请求方法:POST

请求参数:

参数 示例 含义
current 1 当前页,从1开始
pagesize 20 每页的数据个数
typeid 12 分类的id,即上方得到的菜单的id值
version 1.0.0 系统的版本号,当前是1.0.0

服务器响应:

{
"data": [
{
"id": 8420,
"title": "看你铲土真辛苦,老天都来帮你",
"pubdate": 1477888799,
"goodpost": 3,
"badpost": 0,
"notpost": 0,
"url": "http://www.gifcool.com/fun/8420.html",
"img": "http://ww3.sinaimg.cn/mw690/55c5a9bfgw1f9bco1apdyg209h0501ky.gif",
"img_s": "http://ww3.sinaimg.cn/small/55c5a9bfgw1f9bco1apdyg209h0501ky.gif",
"width": 341,
"info": " 我就铲了一锹而已啊!",
"height": 180,
"videolink": "",
"video_local": "",
"type": 1,
"msg_num": 0
}
],
"msg": "成功",
"status": 200,
"page": {
"totalnum": 6741, // 总数
"totalpage": 338, // 总页数
"current": 1 //第几页
}
}

喜欢(点赞)

请求地址:http://www.gifcool.com/plus/postGood.php

请求方法:POST

请求参数:

参数 示例 含义
id 8419 当前页,从1开始
version 1.0.0 系统的版本号,当前是1.0.0

响应:

{"msg":"操作成功","status":200}

不喜欢(评差)

请求地址:http://www.gifcool.com/plus/postBad.php

请求方法:POST

请求参数:

参数 示例 含义
id 8419 当前页,从1开始
version 1.0.0 系统的版本号,当前是1.0.0

响应:

{"msg":"操作成功","status":200}

关于喜欢和不喜欢两个接口,它(官方app)是把请求成后的信息(比如点赞成功)记录到了本地的数据库,通过本地数据库的信息来判断你是否已经点赞了。

说明:

该博文只是为了学习而写,该博文的接口也只能用来学习,不可以用做商业用途,以免造成侵权行为。

如果官方(姐夫酷版权所有者)不允许使用它的api接口,请提出,我会立即删除该博文。

如有疑问或建议,欢迎进QQ群来讨论交流:487786925( Android研发村 )

使用Fiddler抓取到的“姐夫酷”API接口的更多相关文章

  1. 在线音乐播放器-----酷狗音乐api接口抓取

    首先身为一个在线音乐播放器,需要前端和数据库的搭配使用. 在数据库方面,我们没有办法制作,首先是版权问题,再加上数据量.所以我们需要借用其他网络播放器的数据库. 但是这些在线播放器,如百度,酷狗,酷我 ...

  2. App开发如何利用Fidder,在api接口还没有实现的情况下模拟数据,继续开发

    相信app开发很多时候,都是等后台出接口,拿到数据调试错误.殊不知,我们完全可以不用等,只要有约定好的接口定义文档,借助工具就能做到,自己模拟数据返回~      下面主要是在项目组开发过程中,使用F ...

  3. Postman - 功能强大的 API 接口请求调试和管理工具

    Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...

  4. Web API接口 安全验证

    在上篇随笔<Web API应用架构设计分析(1)>,我对Web API的各种应用架构进行了概括性的分析和设计,Web API 是一种应用接口框架,它能够构建HTTP服务以支撑更广泛的客户端 ...

  5. 常用精品API接口汇总

    下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送.音乐.云.语义识别 ...

  6. SpringMVC Restful api接口实现

    [前言] 面向资源的 Restful 风格的 api 接口本着简洁,资源,便于扩展,便于理解等等各项优势,在如今的系统服务中越来越受欢迎. .net平台有WebAPi项目是专门用来实现Restful ...

  7. 常用API接口汇总

    下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送.音乐.云.语义识别 ...

  8. 【转载】常用精品API接口汇总

    原文链接戳这里~~ 下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送 ...

  9. 使用HttpWebRequest请求API接口以及其他网站资源

    很多时候,我们项目需要其他网站的资源,而这个被请求的网站可能属于你们自己开发管理的网站.也可能是公网上其他网站对外开发的API接口,比如说腾讯的微信公众平台的API接口.各大短信服务商的短信API接口 ...

随机推荐

  1. List -- 循环操作

    1,单元循环 for…in 2,索引循环 for…in range(len(List)) 3,同时循环单元和索引 使用enumerate: for index, item in enumerate(L ...

  2. leyou_06——FastDFS在Nginx下的安装与测试

    1.FastDFS FastDFS是由淘宝的余庆先生所开发的一个轻量级.高性能的开源分布式文件系统.用纯C语言开发,功能丰富: 文件存储 文件同步 文件访问(上传.下载) 存取负载均衡 在线扩容 2. ...

  3. 谈谈数据库sql编写

    本文主要给初学者关于关系数库的一个浮光掠影式的介绍,如果想深入理解,必须对于下文提到的每个内容单独深入学习! it-information technology的简称,中文是信息机技术,信息其实就是数 ...

  4. 利用TensorFlow识别手写的数字---基于Softmax回归

    1 MNIST数据集 MNIST数据集主要由一些手写数字的图片和相应的标签组成,图片一共有10类,分别对应从0-9,共10个阿拉伯数字.原始的MNIST数据库一共包含下面4个文件,见下表. 训练图像一 ...

  5. Math concepts / 数学概念

    链接网址:Math concepts / 数学概念 – https://www.codelast.com/math-concepts-%e6%95%b0%e5%ad%a6%e6%a6%82%e5%bf ...

  6. BZOJ2982: combination Lucas模板

    2982: combination Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 734  Solved: 437[Submit][Status][Di ...

  7. goland快捷键使用

    查找替换: 格式化代码块:ctrl+alt+L将选中的行自动对齐:ctrl+alt+I优化没必要的imports:ctrl+alt+O展开代码块:ctrl+“+”展开文件中所有代码块:ctrl+shi ...

  8. MySQL用命令行复制表,查看表结构

    一.mysql中用命令行复制表结构的方法主要有一下几种: 1.只复制表结构到新表 1 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2; 或 1 CREATE TA ...

  9. Leetcode11.Container With Most Water盛最多水的容器

    给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0).找出其中的两条线, ...

  10. UE4物理模块(三)---碰撞查询(上)

    在前一文中介绍了如何在UE4中创建简单碰撞或者直接使用其mesh表示的复杂碰撞: Jerry:UE4物理模块(二)---建立物体碰撞​zhuanlan.zhihu.com 那么在拿到碰撞之后,就可以进 ...