用curl技术开发了一个微信文章聚合类产品,把抓取到的数据转换成json格式,并在android端调用json数据接口加以显示;

基于weiphp做了一个掌上头条插件,也是用的网页采集技术;和一个创业团队一起在做一个高考志愿填报系统,所有的数据也是从别的地方抓取。

总而言之,网页抓取与网页采集技术是一项非常实用的技能,他能让我们高效快速的获取我们开发产品所需要的一些基本数据。

网页抓取与网页采集过程中难免需要用到抓包技术,所谓抓包,就是我们在访问一个目标网站的时候,需要分析我们提交给浏览器的一些http请求以及提交给浏览器的一些数据,在知道请求是如何发起的以及post了哪些数据之后,我们才能针对目标网页写出相应的采集程序。特别是在模拟登陆一些需要用户进行登陆验证的网站时,抓包分析就变得很重要。

一些浏览器自带抓包分析工具或者有其可扩展的抓包插件,像火狐浏览器有firebug插件,IE浏览器有HttpWatch。每个抓包工具都有其独特的功能,这里就不一一介绍了,今天给大家介绍一个好用的抓包工具Fiddler。

手机APP抓包

现在我们来结合一个具体的例子来讲一下如何抓包分析手机APP的请求数据,并达到自己的需求。我这里给大家讲一个LOL盒子的抓包实例。

我们知道,LOL盒子没有网页版,或者说网页版的功能并不像手机APP一样数据整合的那么齐全。如果我们要做一个微信版的LOL盒子,让用户在微信端回复一些关键词就能查看一些基本信息,比如用户在微信中回复“英雄”就能查看LOL全部的英雄信息,包括出装、符文之类的。那么我们想在微信端实现这些功能,肯定需要数据库的支持,如果我们的数据从LOL官网抓取的话,免不了要写很多匹配规则,所以一个简单高效的方法是直接抓取LOL盒子已经整合了的数据。那么正题开始,我们开始抓LOL盒子集成的全部英雄的数据。

1、首先在手机下载LOL盒子,并进入首页(请忽略我这个战五渣的战斗力指数)

2、打开Fiddler并点Remove  all把抓包信息全部清除

3、在LOL盒子中点击英雄进入查看英雄页面

4、可以看到查看英雄页面有免费、我的英雄、全部三个选项

5、这时候我们可以看到Fiddler已经抓到我们需要的数据接口了

6、我们在其中一个数据接口上面点击右键,复制url地址并在浏览器中打开

7、就能看到我们需要的周免英雄的数据接口了,是json格式的

到此为止,抓包分析的整个流程大家一目了然了,得到了json接口之后,我们就能用curl技术把数据采集下来,并把json格式的数据转换成数组或者其他格式,然后就可以存到我们自己的数据库中了,当用户在微信中回复关键词时,我们就从数据库中取出相应的数据并回复给用户就行了。

Fiddler 网页采集抓包利器__手机app抓包的更多相关文章

  1. Fiddler 网页采集抓包利器

    最近这段时间,网页采集方面的工作做得比较多.用curl技术开发了一个微信文章聚合类产品,把抓取到的数据转换成json格式,并在android端调用json数据接口加以显示:基于weiphp做了一个掌上 ...

  2. fiddler 抓取手机app请求包

    今天心血来潮,也不知道怎么了,想着抓抓我们公司手机app的包看看,研究研究我们公司的接口,哎,我们api文档,我自己抓包看看吧.工具选择fiddler,理由免费,用着也舒服,手机设备 iPhone6 ...

  3. 使用Fiddler抓取手机APP数据包--360WIFI

    使用Fiddler抓取手机APP流量--360WIFI 操作步骤:1.打开Fiddler,Tools-Fiddler Options-Connections,勾选Allow remote comput ...

  4. fiddler抓包+安卓机 完成手机app抓包的配置 遇到的一些问题

    fiddler抓包+安卓模拟器完成手机app抓包的配置:fiddler抓包+雷电模拟器 完成手机app抓包的配置 其实在安卓真机上弄比在虚拟机上弄更麻烦一点,它们的步骤都差不多一样,就是在安卓真机上弄 ...

  5. 爬虫之手机APP抓包教程-亲测HTTP和HTTPS均可实现

    当下很多网站都有做自己的APP端产品,一个优秀的爬虫工程师,必须能够绕过难爬取点而取捷径,这是皆大欢喜的.但是在网上收罗和查阅了无数文档和资料,本人亲测无数次,均不能正常获取HTTPS数据,究其原因是 ...

  6. scrapy之手机app抓包爬虫

    手机App抓包爬虫 1. items.py class DouyuspiderItem(scrapy.Item): name = scrapy.Field()# 存储照片的名字 imagesUrls ...

  7. jmeter旅程第一站:Jmeter抓包浏览器或者抓取手机app的包

    学习jmeter?从实际出发,我也是一个初学者,会优先考虑先用来做一些简单的抓包.接口测试,在实践的过程中学习jmeter用途.那么接下来,这篇文章我会以jmeter抓包开启我的jmeter旅程. 这 ...

  8. 网络爬虫中Fiddler抓取PC端网页数据包与手机端APP数据包

    1 引言 在编写网络爬虫时,第一步(也是极为关键一步)就是对网络的请求(request)和回复(response)进行分析,寻找其中的规律,然后才能通过网络爬虫进行模拟.浏览器大多也自带有调试工具可以 ...

  9. Fiddler高级用法-抓取手机app数据包

    在上一篇中介绍了Fiddler的基本使用方法.通过上一篇的操作我们可以直接抓取浏览器的数据包.但在APP测试中,我们需要抓取手机APP上的数据包,应该怎么操作呢? Andriod配置方法 1)确保手机 ...

随机推荐

  1. 5月5号周二课堂练习:简评cnblogs.com的用户体验

    一.用户类型 在博客园上写博客,提问题,浏览感兴趣的博客帖子的活跃用户. 二.对cnblogs的期望 在博客园上写博客更流畅,制作手机版的APP可以随时随地在线浏览大牛们写的博客,提出的问题能更好的更 ...

  2. IHttpModule的那些事

    写在前面 关于IHttpModule的相关内容,在面试的时候也被问到过,当时也是隐隐约约的感觉这个接口有一个Init方法,可以在实现类中的Init方法注册一系列的事件,说句实话,具体哪些事件,忘了差不 ...

  3. Spring学习(七)——增强类

    Spring 切点 什么是切点?切点(Pointcut),每个程序类都拥有多个连接点,如一个拥有两个方法的类,这两个方法都是连接点,即连接点是程序类中客观存在的事物.但在这为数从多的连接点中,如何定位 ...

  4. erlang中检查内存泄露

    最近项目内存占用过多,检查一下erlang的内存使用情况. 1. 通过etop可以很方便得出erlang内存使用的情况 spawn(fun() -> etop:start([{output, t ...

  5. Servlet处理表单

  6. 【转】MySQL数据类型

    1.整型 MySQL数据类型 含义(有符号) tinyint(m) 1个字节  范围(-128~127) smallint(m) 2个字节  范围(-32768~32767) mediumint(m) ...

  7. PHP关于传众多参数还是传上下文对象的性能测试

    在开发微信公众平台平台的过程中,有这么几个参数总是需要传来传去,$userOpenId,$message,$time. 在整个程序的运行过程中,为了函数方便的处理,将这三个变量一直放在参数列表里.关于 ...

  8. JDK1.8最新特性--Lambda表达式(重点)

    一个旧版本JDK简单匿名类的用例如下所示: // Java 8之前: JButton show = new JButton("Show"); show.addActionListe ...

  9. BER-TLV数据结构【转】

    转自:https://www.cnblogs.com/SCPlatform/p/5076935.html 为了便于后文的引用说明,先列出一段TLV结构的数据: [6F] 4D │ ├─[84] 07 ...

  10. Mac下Java JNI 调C

    简介 JNI的实现步骤如下: 编写带有native声明的方法的Java类 使用javac命令编译编写的Java类 使用java -jni className 来生成后缀名为.h的头文件 使用其他语言( ...