JavaWeb之抓包之旅(二) :抓包工具

谈到抓包工具,我们很多的浏览器都内置了抓包工具,还有很多优秀的插件,这里我用到的是:charles。(当我说到这个工具的时候,你可能会,哦,原来是这个啊,网上也有一堆教程,但是这里我想用多个例子来示例)。

至于Charles的安装说明,请看链接:charles使用教程指南

接下来我就来讲3个实例:(记得Charles代理得开,手机抓包时,wifi设置代理)

  1. 第一我们来抓今日头条网页的一个新闻链接,来看看界面

    此时clear下charles 的内容,等下会好看一点。点击该链接,我们观察到Charles上的内容。

    我们要选择Sequence 模式(请求从上往下一次进行)。当我们点击链接时,我们会发送http请求,请求经过Charles代理,然后转发给服务器,所有我们可以看到数据类容。我们来详细看看。

    1. 图上画红圈的上面有个球,表示自己点击数据请求,下面的一些图片标志,请求的是图片。我们点击这条连接,看到下面有Request,Response。
    2. 观察Request:下面有Headers(请求的头部信息),Cookies(请求的Cookies),Raw。由于是Get请求,就没有Form选项了。我们点击Overview,会看到。

      你没有看错,这里的URL就是你的请求路径,你直接点击这条路径就会直接进入这个网页。Response Code200 就表示响应成功。Method,kept alive 等等。

      3.观察Response:

      下面有Headers(响应头部),一些其他的选项,由于响应返回是Html我们点击Html,正如图片所显示,我们正确的取到了内容。

  2. 我们来抓手机版今日头条,记得连上电脑wifi,设置手机WiFi信息如下: 代理设置为手动,你主机的ip,端口即Charles的代理端口 默认8888.

    看看要抓的信息:

    我来抓女生是怎么看待男生抽烟的。

    我们点击这条链接会看到:

    我们来分析:

    1. Host:60.29.248.126,应该是今日头条他们服务的ip地址,他们的服务器项目就挂在上面了(我个人猜测哦,)响应返回的是一个JSON字符串,他们客户端根据响应的JSON字符串,做相应的解析,然后去请求数据。里面还有很多加密的。(如果想要了解里面,可以去研究一下返回的JSON字符串,里面会包含所有他响应的内容,要么是转化,要么是请求链接。)

    我来抓我自己写的一个APP的数据:

    这是一个简单的登录:我们看到HOST:192.168.191.1:8080.应该就是我电脑开的web服务器了。Path:就是我的请求路径了,下面的Request的Form就是我请求的参数了。phone,pwd。通过这个请求会响应一个对应的信息(xml,html,json都有可能)。

我抓过QQ,微信,他们都是加密过了的,流程非常复杂,有兴趣的可以去试试。

这一讲就讲到这里,有不对的地方,菜鸟希望大家指出。

下一讲,HttpClient,以及HttpClient的工具封装类。讲完这个,我们就可以用java在后台,模拟这个请求,抓取数据,并分析数据。

时间: 2024-11-06 18:30:39

JavaWeb之抓包之旅(二) :抓包工具的相关文章

JavaWeb之抓包之旅(二)

JavaWeb 抓包之旅(二) :Http协议 注:http协议,我是从网上总结出来 首先来看看界面吧 再来看看抓包的界面(暂时不要问我用的什么工具,我们慢慢来) 先看请求报头 我们来分析看看: 我只知道POST请求 地址default/2.aspx Http1.1(持久连接) Host:指定请求资源的Intenet主机和端口号,必须表示请求url的原始服务器或网关的位置.HTTP/1.1请求必须包含主机头域,否则系统会以400状态码返回. Content-Length:很明显是内容长度. Ca

JavaWeb之抓包之旅(三) :HttpClient封装工具类

谈到httpClient相信大家都不陌生,网上也有一大推别人总结的.HttpClient是Apache Jakarta Common下的子项目,用来提供高效的.最新的.功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议. 详细请参考文档:HttpClient 我们在对数据进行请求的时候经常使用. 前不久在做一个百度地图定位的(通过GPS判断你在某个学校,但是并不是每个学校地图上都有,而且如何确定范围呢?) 类似于饿了么,我一直在想它为什么能定位到具体的某个宿舍呢

如何发布二方包?

本篇文章会用到很多npm命令,可以回顾npm文档. 通常我们新建项目,会安装很多依赖,那个是第三方npm包.如果是公司内部的包,可以称为二方包. 登陆后,才能发包,如果发包失败,或者登陆失败,请检查npm的版本和node.js版本. 一.新建包 会涉及package.json文件,主模块文件,单元测试文件,demo文件,具体内容请查看github. 二.发布二方包 # 上班,二方包管理平台 http://npm.cydata.com.cn/ 1.设置源 # 设置淘宝镜像源 npm config

wiresherk抓包之旅

wireshark的原名是Ethereal,新名字是2006年起用的.当时Ethereal的主要开发者Gerald决定离开他原来供职的公司NIS,并继续开发这个软件.但由于Ethereal这个名称的使用权已经被原来那个公司注册,Wireshark这个新名字也就应运而生了. Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息,也是网络工程师.信息安全工程师必备的一个工具之一. Wireshark下载:https://www.

qxdm,qpst,qcat抓包分析VoLTE SIP协商包

QXDM,QPST和QCAT是Qualcomm高通公司针对高通芯片的抓包分析工具. QXDM抓包分析,QPST与手机com口连接,QCAT用来分析抓包产生的isf文件(log). 使用版本: QXDM-3.14.594 QPST-2.7.411 QCAT.06.30.30.00 首先,手机连接电脑usb以后,查看设备管理器,com口需要安装高通驱动. 打开QXDM,Options->communications,添加端口: 查看QPST,可以看到端口状态是enable,QXDM上显示端口连接.

tcpdump 抓包 通过 Wireshark分析抓包文件

1. tcpdump的基本原理 1.1  tcpdump starce 的区别 在本机中的进程的系统行为调用跟踪,starce   是一个很好的工具:但是在网络问题的调试中,tcpdump 应该是一个必不可少的工具:能清晰分析网络通信的信息. 默认情况下,tcpdump 不会抓取本机内部通讯的报文   :根据网络协议栈的规定,对于报文,即使是目的地是本机(自己和自己通信),也需要经过本机的网络协议层,所以本机通讯肯定是通过API进入内核,并且完成路由选择.[比如本机的TCP通信,也必须要sock

使用charles proxy for Mac来抓取手机App的网络包

之前做Web项目的时候,经常会使用Fiddler(Windows下).Charles Proxy(Mac下)来抓包,调试一些东西:现在搞Android App开发,有时候也需要分析手机App的网络请求,包括参数.返回值等.在Mac上也是可以继续使用Charles Proxy来抓Android App发出的网络包的,大概的几个步骤: 1.保证手机和Mac连接的是同一个无线局域网 2.在Mac上打开Charles Proxy,菜单栏操作:Proxy→Proxy Setting,检查端口,一般保持默认

javaweb学习总结(六)——Servlet开发(二)

转载:http://www.cnblogs.com/xdp-gacl/p/3763559.html 只为成功找方法,不为失败找借口! javaweb学习总结(六)——Servlet开发(二) 一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数. 例如: 1 <servlet> 2 <servlet-name>ServletC

Phantomjs+Nodejs+Mysql数据抓取(1.数据抓取)

概要: 这篇博文主要讲一下如何使用Phantomjs进行数据抓取,这里面抓的网站是太平洋电脑网估价的内容.主要是对电脑笔记本以及他们的属性进行抓取,然后在使用nodejs进行下载图片和插入数据库操作. 先进行所有页面的内容进行抓取 var page =require('webpage').create(); var address='http://product.pconline.com.cn/server/'; var fs = require('fs'); var mypath = 'ver