介绍一款抓包工具,相信很多人都有用过Fiddler,它是通过代理来实现数据抓取的下面用它来对Android的网络连接进行抓取
Win8以上 建议用NET4
下载完安装,然后打开
Tools >> Fiddler Options...
打开Connections,勾选Allow remote computers to connect,点击OK,然后重启Fiddler
打开命令行(Win+R,输入CMD回车),输入ipconfig,查看当前PC连接的IP,打开手机,让手机与电脑在同一局域网内,
长按连接的WiFi,选择修改网络,勾选显示高级设置
代理服务器主机名填写刚刚看到的IP地址,端口填Fiddler默认的8888,(可以在Fiddler的Connections里改)
如果保存按钮无法点击就再输一遍WiFi密码,然后保存,现在就可以通过Fiddler去抓手机设备发送的http的包了。
下面是我在手机浏览器打开我的个人博客的抓取结果,点击每一条数据都可在右边看到相关的内容
下面我用手机浏览器打开学校教务官网,登录我的学号
结果如下图,帐户密码都可以看到
Fiddler也可以用来对其他程序进行抓包,PC浏览器等
您的连接不是私密连接
如果打开Fiddler后浏览器无法联网,显示“您的连接不是私密连接”
解决方法一:把HTTPS下的Decypt HTTPS traffic去掉勾选就行
解决方法二:安装证书
在勾选Decrypt HTTPS traffic时会提示安装证书,点击Yes
记得不要选择浏览器,不然还是会提示不是私密连接的。我这里选择远程终端
手机证书下载(我没装)
至于怎么装,自己Google吧
如果手机提示证书问题,点击“是,继续浏览本网站(不推荐)” 就行
抓完包如果手机联不了网,把手机WiFi代理改回来就行,就是把代理设置改为“无”
抓取JSON数据、XML数据
打开Fiddler后在浏览器重新请求网页,这样Fiddler中就会抓取到刚刚请求的网页的信息
如下,我访问了
http://www.weather.com.cn/adat/cityinfo/101281901.html
然后点击相应的数据,在右边点击Inspectors,点击下面JSON,就可以看到相应的JSON数据内容
点击Inspectors,选择下面的TextView,看到的是一小段乱码,只需要点击3,Response body is encoded, Click to decode.即可看到JSON数据,使用时直接复制就行
XML格式的数据也是同样的方法