文档章节

python爬虫入门02:教你通过 Fiddler 进行手机抓包

o
 osc_29lf73z8
发布于 2019/05/08 15:12
字数 1560
阅读 4
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

 

哟~哟~哟~

 

hi起来

 

everybody

 

 

 

今天要说说怎么在我们的手机抓包

 

通过

 

python爬虫入门01:教你在Chrome浏览器轻松抓包

 

 

我们知道了 HTTP 的请求方式

 

以及在 Chrome 中摸清了一些套路

 

但是

 

除了对数据进行解析之外

 

有时候我们想

 

对请求的数据或者响应的数据进行篡改

 

怎么做呢?

 

我们经常在用的手机

 

手机里面的数据

 

怎么对它抓包呢?

 

那么...

 

接下来就是学习 python 的正确姿势

 

 

我们要用到一款强大免费的抓包工具

 

Fiddler

你可以到

 

https://www.telerik.com/download/fiddler

 

去下载

 

如果你觉得麻烦

 

没关系

 

小帅b已经帮大家下载好了

 

直接在公众号发送

 

抓包

 

就可以直接获取 Fiddler 

 

那么 Fiddler 是怎么玩的呢?

 

一般情况下

 

我们通过浏览器来请求服务器的时候

 

是点对点的

 

我来给大家画个图

 

正常情况下

 

浏览器给服务器发送请求

 

服务器响应返回数据

 

但是这个时候

 

Fiddler非要来这里插一脚

 

 

 

然后

 

就变成这样了

 

 

Chrome发送请求给服务器的时候

 

会被 Fiddler 拦截下来

 

可以在这里修改请求参数什么的

 

然后 Fiddler 假装自己是浏览器

 

再发送数据给服务器

 

 

这个时候服务器接收到 Fiddler 的请求

 

还是天真的以为是 Chrome 发送的

 

于是就返回数据了

 

没想到在半路杀出个程咬金

 

返回的数据又被 Fiddler 拦截下来了

 

 

Fiddler 可以在这个时候

 

对数据进行修改

 

然后在返回给 Chrome

 

这就是 Fiddler 的主要使命

 

 

 

好了

 

知道了 Fiddler 的具体工作原理之后

 

咱们就能操作一番

 

安装完之后在电脑打开 Fiddler

 

一般情况下

 

我们按下 F12

 

就可以抓取我们在浏览器的请求了

 

 

 

如果这个时候你在浏览器发送请求

 

但是 Fiddler 没有一丁点反应

 

那么可以在你的浏览器配置一下代理

 

Fiddler 的默认代理 IP 为

 

127.0.0.1

 

端口为

 

8888

 

就拿 Chrome 浏览器为例

 

打开

 

设置-->高级-->打开代理设置

 

进行设置上面的 ip 地址和端口就可以了

 

这时候你在浏览器访问网站

 

在 Fiddler 就可以抓取到你的请求了

 

 

不过...

 

先别高兴太早

 

你可能会发现很多这样的错误

 

Tunnel to 443

 

 

因为现在很多请求都是 HTTPS

 

所以我们需要安装证书

 

才可以抓取 https 的请求

 

那么咋整咧?

 

 

点击菜单 

 

Tools->Options 

 

接着选择

 

 HTTPS 

 

勾上

 

Decrypt HTTPS traffic

 

 

 

勾完之后呢

 

有没看到右上角有个 Actions 按钮

 

轻轻按一下

 

选择

 

 Reset All Certificates

 

完事之后

 

回到你的浏览器输入

 

localhost:8888

 

可以看到一个这样子的页面

 

点击 FiddlerRoot_certificate 下载证书

 

安装完之后再打开 Fiddler

 

你会发现你可以抓取 Https 的请求了

 

 

那么

 

各栏之间都代表啥意思呢

 

左边代表的就是你的请求

 

Result : 请求的 HTTP(s) 状态吗
Protocol : 请求协议
HOST : 请求的主机名
URL : 请求的资源目录位置
Body : 请求大小
Caching : 请求的缓存
Content-Type : 服务器响应的实体类型
Process : 是谁(进程)发送的
Comments : 备注
Custom : 自定义

 

 

当我们点击某一条请求后

 

在右边的 Insepector 中就可以看到具体的请求和返回信息内容了

 

 

说到这里

 

你会发现

 

这他妈的不就和上次讲的 Chrome 的开发工具面板差不多么

 

稍安勿躁

 

接下来就说说怎么来配置手机

 

使用 Fiddler 来抓取我们手机上的数据

 

在你的 Fiddler 中

 

像以下设置

 

 

接着 

 

让你现在的这台电脑

 

和你的手机都连在同一个 wifi 下

 

接着

 

查看你电脑的 ip 地址

 

 

在你的手机上

 

打开你连接的 wifi

 

设置 http 代理服务器和端口

 

这里的服务器地址就是你刚找到的 IPv4 地址

 

端口 8888

 

 

 

紧接着

 

手机打开浏览器输入你的 IPv4 地址和端口

 

下载安装证书

 

 

 

安装完之后呢

 

Android手机这样一般就可以用了

 

iPhone的话

 

还要授权一下

 

在你手机的

 

 设置-->通用-->关于本机-->证书信任设置-->把刚刚下载的证书打上勾

 

 

 

ok

 

搞定

 

你手机的所有访问都可以用Fiddler来抓包了

 

我现在就在我的手机上

 

打开微信和网易云音乐

 

可以看到我电脑上的 Fiddler

 

抓取到了!!

 

 

 

既然都抓到数据了

 

那么接下里就来点骚操作吧

 

使用 Fiddler 来修改一下我们的请求和返回数据

 

应该很好玩!

 

我们来玩玩 b 站吧

 

手机打开bilibili

 

 

 

这时候我们可以在 Fiddler 设置过滤

 

我们就针对 b 站的请求

 

 

然后我们在 Fiddler 按一下

 

ALT+F11

 

按完之后呢

 

所有服务器的返回都会被 Fiddler 拦截

 

ok

 

接下来

 

比如我要看 b 站的热门内容

 

那么我们点击这个 热门 的tab

 

 

 

可以看到

 

Fiddler 拦截了

 

 

我们点击这个请求

 

然后点击右边的 Inspectors

 

这时候可以看到 b 站服务器给我们返回了热门内容

 

也就是在这个时候

 

我们来篡改一下这些数据

 

让我们改的数据显示到手机上

 

那就把第一个视频的标题改了吧

 

改成

 

小帅b太帅了!!

 

 

 

改完之后呢

 

 

我们点击 Run to Completion

 

也就是将我们的数据发给手机

 

那么这个时候

 

看看我们的手机吧

 

 

 

oh

 

不好意思

 

小帅b成为b站热门第一了!

 

哈哈哈

 

 

ok

 

以上我们演示的是返回数据的拦截

 

那么对于请求时的拦截

 

快捷键是 F11

 

相信你也知道怎么玩了!

 

(完)

 

 

 

快来加入 Pythonner 的聚集地

 

 

 

 

 

 

                          

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
beego API开发以及自动化文档

beego API开发以及自动化文档 beego1.3版本已经在上个星期发布了,但是还是有很多人不了解如何来进行开发,也是在一步一步的测试中开发,期间QQ群里面很多人都问我如何开发,我的业余时间实在...

astaxie
2014/06/25
2.7W
22
5分钟 maven3 快速入门指南

前提条件 你首先需要了解如何在电脑上安装软件。如果你不知道如何做到这一点,请询问你办公室,学校里的人,或花钱找人来解释这个给你。 不建议给Maven的服务邮箱来发邮件寻求支持。 安装Mav...

fanl1982
2014/01/23
1.2W
7
opm-server-mirror

代码更新 2009-11-25: 加入反爬虫功能。直接Web访问服务器将跳转到Google。 使用方法 下载index.zip 解压index.zip得到index.php 将index.php传到支持php和cURL的国外服务器上 打开 http:/...

luosheng86
2013/01/29
1K
0
漏洞检测工具--Peach Fuzzer

Peach是一种用Python编写的 Fuzzer。这种工具有助于发现并公开许多漏洞,并认为是黑客和安全团体中最流行的工具之一。为了利用Peach框架,必须创建Phthon脚本,脚本 中包含了在服务器上执行的...

匿名
2013/02/06
8.8K
1
跨平台手机应用开发--Gideros

Gideros 可以让你轻松快速创建 iOS 和 Android 应用,提供用户友好的集成开发环境,内建模拟器对应用进行不同屏幕大小、分辨率下的测试,最大的优点是可即时修改代码即时进行测试,无需编译安...

匿名
2013/02/19
2.7K
1

没有更多内容

加载失败,请刷新页面

加载更多

matplotlib基础绘图命令之imshow

欢迎关注”生信修炼手册”! 在matplotlib中,imshow方法用于绘制热图,基本用法如下 import matplotlib.pyplot as plt import numpy as np np.random.seed(123456789) data = np.random...

庐州月光
昨天
0
0
[Bazel]自定义工具链

1 前言 2 Non-Platform 方式 3 Platform 方式 3.1 平台 3.2 工具链 3.3 Platform + Toolchain 实现平台方式构建 4 小结 1 前言 本文会讲述 Bazel 自定义工具链的两种方式,Platform 和 Non-...

别打名名
前天
0
0
浏览器在输入URL后,到底发生了什么?

这是一道面试会经常问的问题,平时虽然很常见的操作,但是探究其底层原理,可能并不是一件简单的事情,于是我从各处搜罗整理下全过程,在这里做分享。 第一步:浏览器输入域名 例如输入:www...

lintao111
前天
0
0
通过注解的方式整合 MyBatis + Spring Boot

目录 目录 1. 前言 2. 整合过程 2.1 新建 Spring Boot 项目 2.2 添加 pom 依赖 2.3 准备数据库 2.4 pojo 层 2.5 dao 层 2.7 controller 层 2.8 入口程序配置 2.9 网页测试 1. 前言 本篇博客主...

村雨遥
前天
0
0
字节跳动AI Lab 秋季正式批招聘

0 1 公司简介 字节跳动AI Lab,成立于2016年,致力于开发为字节跳动内容平台服务的创新技术,不仅仅是进行理论研究,我们的想法还可以通过实验证明和快速跟踪用于产品部署。 人工智能涉及的研...

我爱计算机视觉
前天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部