博客
关于我
「docker实战篇」python的docker爬虫技术-mitmproxy之安卓模拟器mitmdump(11)
阅读量:367 次
发布时间:2019-03-04

本文共 1361 字,大约阅读时间需要 4 分钟。

mitmdump与Python脚本交互:简单而实用的网络抓取与分析工具

mitmdump 是 mitmproxy 中的一个非常重要的组件。它的独特之处在于能够与 Python 脚本进行交互,这对于网络抓取和数据分析来说无疑是一个非常强大的工具。

mitmdump 的启动与配置

要使用 mitmdump,首先需要了解它的基本启动方式。默认情况下,mitmdump 会在端口 8080 上监听。你可以通过以下命令启动 mitmdump:

mitmdump

如果你需要指定特定的端口,可以使用 -p 选项:

mitmdump -p 8889

mitmdump 与 Python 脚本交互

当你需要更复杂的网络抓取和数据分析时,mitmdump 可以与 Python 脚本结合使用。你可以通过以下方式指定 Python 脚本:

mitmdump -p 8889 -s test.py

这将允许 mitmdump 将截获的网络流量传递给 test.py 脚本进行处理。

编写 Python 脚本

为了实现 mitmdump 与 Python 脚本的交互,你需要在脚本中导入 mitmproxy 的相关模块,并定义适当的函数来处理请求和响应。以下是一个简单的示例:

from mitmproxy import ctxdef request(flow):    ctx.log.info("请求地址:%s" % flow.request.url)    ctx.log.info("请求方法:%s" % flow.request.method)def response(flow):    ctx.log.info("响应状态码:%s" % flow.response.status_code)    ctx.log.info("响应内容:%s" % flow.response.text)

这个脚本会帮助你跟踪和分析网络请求和响应。

mitmproxy 的按键操作

mitmproxy 提供了一系列按键操作,方便你快速完成常用任务。以下是常用的按键及其作用:

按键 说明
q 退出当前界面
d 删除当前请求
D 恢复刚才删除的请求
G 跳到最近一个请求
g 跳到第一个请求
C 清空控制台
i 输入要拦截的文件或域名(注意:逗号需用转义字符)
a 放行当前请求
A 放行所有请求
? 查看帮助信息
↑↓ 上下移动光标
enter 查看光标所在列的内容
tab 切换到 Request 或 Response 的详细信息
/ 搜索 body 中的内容
esc 退出编辑模式
e 进入编辑模式

使用 mitmdump 截获数据

如果你需要将截获的数据保存到文件中,可以使用以下命令:

mitmdump -w outfile

这将将截获的数据保存到 outfile 文件中。

mitmdump 的高级用法

当你对 mitmdump 有了更深入的使用需求时,可以尝试以下命令:

mitmdump -s script.py

这将允许你将截获的数据传递给你的 Python 脚本进行处理。


mitmdump 实际上并不难使用,关键在于如何编写合适的 Python 脚本。通过灵活配置和扩展,你可以根据自己的需求构建出一个高效的网络抓取与分析系统。

转载地址:http://fope.baihongyu.com/

你可能感兴趣的文章
non linear processor
查看>>
Non-final field ‘code‘ in enum StateEnum‘
查看>>