python使用mitmproxy和mitmdump抓包在电脑上抓包(二)

在我的上篇文章中,主要记录如何安装mitmproxy和抓取https流量。参考链接:

python使用mitmproxy和mitmdump抓包在电脑上抓包-CSDN博客

本篇主要使用python配合mitmdump来抓包和处理返回包,更加灵活,这也是mitmproxy(mitmdump)的最强大之处(其抓包、分析包不如fiddler、charles直观方便)。

概要就是:

管理员运行cmd,然后运行mitmdump -s xxx.py -p 8889(8889是端口,被监控的浏览器的代理127.0.0.1:8889或者被监控的手机的代理198.x.x.x:8889,要设置为8889端口才行),xxx.py为自己编写的抓包文件,参数-s就是指定一个脚本来处理截获的数据。

如果xxx.py中要将符合条件的内容抓取到一个txt中,最好写绝对路径,如D:/cap.txt。

下面是一个最简单的xxx.py代码,用于抓取手机某宝直播间的弹幕的用户昵称和发言内容。(如何在手机设置mitm在下篇记录python使用mitmproxy和mitmdump抓包在手机上抓包(三)-CSDN博客,这里主要是为了演示一个xxx.py的写法)

# -*- coding: utf-8 -*-
from mitmproxy import ctx
import json

#解析数据,获取内容
def deal_json(str):
    dm_json=json.loads(str)
    for x in dm_json['data']['comments']:
        y=str(x['publisherNick']+'-'+x['content'])+'\n'
        ctx.log.error(y)
        fh = open('D:/cap.txt', 'a')
        fh.write(y)
        fh.close()

#获取含有指定字符串的请求包的响应内容
def response(flow):
    if 'https://acs.m.taobao.com/gw/mtop.taobao.iliad.comment.query.latest/1.0/?data=' in flow.request.url:
        text = flow.response.get_text()
        deal_json(text)

在手机上设置好代理以后,电脑上cmd里运行mitmdump -s xxx.py -p 8889,某宝直播的弹幕数据就会被电脑上的mitm中间人捕获(配合手机自动化更强大参考文章python使用uiautomator2操作雷电模拟器_小小爬虾的博客-CSDN博客),并通过 xxx.py将指定内容存入D:/cap.txt文件中。

 运行结果如图:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值