「docker实战篇」python的docker爬虫技术-mitmproxy之安卓模拟器mitmdump(11)

本节主要一个特别重要的组件,mitmproxy中的mitmdump,为什么说它重要?因为它可以跟python脚本进行交互,是不是美滋滋!

如何进行交互

  • mitmdump的启动

默认的端口是8080

mitmdump

`

  • mitmdump指定端口的启动

指定端口是8889

mitmdump -p 8889

`

  • mitmdump指定python程序

指定端口和python程序

mitmdump -p 8889 -s test.py

`

  • 编写python程序

必须要有def requet,对于夜神模拟器的证书配置上次都说过了。这次都不说了。

from mitmproxy import ctx#必须这么写有个request,有个responsedef request(flow):    # print(flow.request.headers)    #ctx.log.info(str(flow.request.headers))    #ctx.log.warn(str(flow.request.headers))    ctx.log.error(str(flow.request.url))    ctx.log.error(str(flow.request.method))    ctx.log.error(str(flow.request.path))
def response(flow):    ctx.log.error(str(flow.response.status_code))
  • mitmproxy 按键

按键

说明

q

退出(相当于返回键,可一级一级返回)

d

删除当前(黄色箭头)指向的链接

D

恢复刚才删除的请求

G

跳到最新一个请求

g

跳到第一个请求

C

清空控制台(C是大写)

i

可输入需要拦截的文件或者域名(逗号需要用\来做转译,栗子:idig8.com)

a

放行请求

A

放行所有请求

?

查看界面帮助信息

^ v

上下箭头移动光标

enter

查看光标所在列的内容

tab 分别查看

Request 和 Response 的详细信息

/

搜索body里的内容

esc

退出编辑

e

进入编辑模式

使用命令启动mitmdump ,并将截获的数据保存到指定文件中

mitmdump -w  outfile

使用指定命令截获的数据,如指定处理脚本文件为script.py.

   mitmdump  -s  script.py

PS:mitmdump 其实不太复杂,重要是写python脚本。

原文发布于微信公众号 - 编程坑太多(idig88)

原文发表时间:2019-03-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券