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

你可能感兴趣的文章
php接口返回状态,大家一般怎么规范接口返回内容
查看>>
php接收formdata上传的多个文件,使用formData()上传多个文件
查看>>
PHP操作csv文件导入+导出
查看>>
php操作mysql用select_php如何操作mysql获取select 结果
查看>>
PHP操作符与控制结构
查看>>
PHP支付宝SDK使用,电脑网页支付
查看>>
php支付宝手机网页支付类实例
查看>>
PHP改变数组key值的方法
查看>>
php教程之php空白页的原因及解决方法
查看>>
PHP数据库操作
查看>>
PHP数据文件过大,导致PHP加速器eaccelerator在PHP5.2版本下崩溃
查看>>
RabbitMQ - 死信、TTL原理、延迟队列安装和配置
查看>>
PHP数据访问的多重查询(租房子查询)
查看>>
RabbitMQ - 如保证消息的可靠性?(消息确认、消息持久化、失败重试机制)
查看>>
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
查看>>
php数组函数分析--array_column
查看>>
php数组去重复数据的小例子
查看>>
php数组实现:哈希 +双向链表
查看>>
PHP数组排序函数array_multisort()函数详解(二)
查看>>
php数组的几个函数和超全局变量
查看>>