一 什么是mitmproxy 抓包工具

mitmdump 详解(3)

 

2 mitmproxy抓包工具介绍

mitmdump 详解(3)

 

 mitmdump 详解(3)

pip install mitmproxy

 

检测是否安装成功

mitmproxy --version

mitmdump 详解(3)

 

默认监听 8080端口,使用 -p 指定端口

 

3 下载证书

mitmdump 详解(3)

 

 linux 中操作

mitmproxy

tab 切换显示页面

esc +q  返回

上下移动

 

windows 端口8080端口

使用命令 mitmdump或者mitmweb

把代理日志写入文件

mitmdump -w text.txt 输出文件名

 

mitmdump 详解(3)

 

mitmweb

mitmdump 详解(3)

 

 mitmdump 详解(3)

 

4 mitmproxy数据过滤 

命令行中输入f

mitmdump 详解(3)

 

断点拦截

命令行输入i,编写拦截规则

mitmdump 详解(3)

 

选择数据包,回车

mitmdump 详解(3)

 

输入e进入修改,tab切换到response.

mitmdump 详解(3)

 

 

q 返回

输入a继续访问.

 

5 使用mitmproxy中间人代理,爬取数据,入库

请求拦截函数名:

def request(flow):
    pass

 

响应拦截:

def responset(flow):
    // flow 表示数据流
    pass

 

实例代码

import json
from handle_db import mongo_info #引入数据库


def response(flow):
    if 'aweme/v1/user/follower/list/' in flow.request.url:
        // 如果请求的url中包含了
        # 'aweme/v1/user/follower/list/', 则拦截
        for user in json.loads(flow.response.text)['followers']:
            douyin_info={}
            douyin_info['share_id']=user['uid']
            douyin_info['douyin_id']=user['short_id']
            douyin_info['nickname']=user['nickname']
            mongo_info.save_task(douyin_info)

 

推荐文章

https://juejin.im/post/5ac9ea6d518825364001b5b9

相关文章:

  • 2021-11-30
  • 2021-04-03
  • 2021-05-19
  • 2021-11-21
  • 2021-07-02
  • 2021-07-06
猜你喜欢
  • 2021-06-18
  • 2021-06-29
  • 2022-02-28
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-12-17
相关资源
相似解决方案