博客
关于我
「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/

你可能感兴趣的文章
PostgreSQL 10.0 preview 变化 - pg_xlog,pg_clog,pg_log目录更名为pg_wal,pg_xact,log
查看>>
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 15章 并行查询_15.2. 何时会用到并行查询?...
查看>>
PostgreSQL 10.1 手册_部分 II. SQL 语言_第 9 章 函数和操作符_9.23. 行和数组比较
查看>>
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 21 章 数据库角色
查看>>
Qt开发——网络编程UDP网络广播软件之服务器端
查看>>
Postgresql 12.9如何配置允许远程连接
查看>>
PostgreSQL 9.6 同步多副本 与 remote_apply事务同步级别 应用场景分析
查看>>
Postgresql CopyManager 流式批量数据入库
查看>>
PostgreSQL cube 插件 - 多维空间对象
查看>>
PostgreSQL Daily Maintenance - cluster table
查看>>
PostgreSQL on Linux 最佳部署手册
查看>>
PostgreSQL Oracle 兼容性之 - pipelined
查看>>
PostgreSQL Point-In-Time Recovery (Incremental Backup)
查看>>
postgresql Streaming Replication监控与注意事项
查看>>
postgresql 不需要付费_使用数据传输在PostgreSQL执行 外部连接运算符
查看>>
postgresql 主从配置_生产环境postgresql主从环境配置
查看>>
postgresql 函数&存储过程 ; 递归查询
查看>>
PostgreSQL 分组聚合查询中 filter 子句替换 case when
查看>>
PostgreSQL 同步流复制锁瓶颈分析
查看>>
PostgreSQL 备份与还原命令 pg_dump
查看>>