Android 通过代理程序抓取请求数据

来源:互联网 发布:晚清民国期刊数据库 编辑:程序博客网 时间:2024/05/18 00:23

有时候,对于一些应用程序,我们需要了解其获取数据的API,例如对于Google Reader这样的应用程序,由于官方没有给出API,网上能找到的文档也很少,这时候要了解其API就可以对官方或非官方应用进行一点hack。对于网络应用,一般用代理来抓取数据即可,不过前提是数据没有加密的情况。

   下面简单介绍一下具体的步骤
一、准备条件

 1、代理程序,可以记录程序的请求和服务器的返回信息,目前一般应用走的都是HTTP协议,因此,只需要一个HTTP代理程序即可,这里使用的模拟器是一段java代码,放在附件里

 2、设置我们的设备或者模拟器,让其网络访问都走我们的代理

二、具体操作,这里以浏览器为例子

1、首先启动我们的代理服务程序


2、启动模拟器,用http代理的方式启动,

点击(此处)折叠或打开

  1. D:\Develop\Android\android-sdk-windows\tools>emulator.exe -avd G1 -http-proxy 19
  2. 2.168.1.101:808
-avd参数是指定模拟器的名称,也就是你在Android Virtual Device Manager里新建设备的名字,
-http-proxy指定http代理,192.168.1.101是我本机IP,端口是上面的代理程序的端口.

3、打开浏览器输入www.baidu.com
这时候就可以看到数据了

    
可以看到浏览器向百度服务器请求的资源,对于其他应用同样也可以这样查看其访问资源的过程

也可通过java  HttpProxy >>data.txt,将输出记载下来,后面慢慢进行分析

4、声明
  这个途径只是用来研究应用接口设计,不要以此来模仿和抄袭他人应用,甚至制造外挂程序,请支持原创!

附件附上
 proxy.rar   
编译代码后,用java HttpProxy启动即可,也可以自己在main方法里修改端口。
原创粉丝点击