中级
分析请求日志识别异常IP
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
request_logs_csv = open_url(____).read()
import pandas as pd
from io import StringIO
logs = pd.read_csv(StringIO(____))
WINDOW = ____
MIN_TS = logs['____'].min()
MAX_TS = logs['____'].max()
ip_stats = []
for ip, grp in logs.groupby(____):
total = len(____)
error_rate = (____).mean()
paths = grp['____'].nunique()
ts_range = grp['____'].max() - grp['____'].min()
rps = total / max(____)
ip_stats.append({'____':ip,'____':total,'____':round(____),'____':paths,'____':round(____)})
ip_df = pd.DataFrame(____).sort_values(____)
suspicious = ip_df[(____) | (____) | (____)]
print(____)
print(ip_df.to_string(____))
print(____)
示例
输入
solve()
期望输出
异常IP分析:
ip total error_rate paths rps
10.0.0.1 19 0.053 5 0.278
10.0.0.2 12 0.167 5 0.229
192.168.1.12 7 0.000 3 0.145
192.168.1.10 6 0.500 4 0.088
192.168.1.11 6 0.167 3 0.126
疑似异常IP数: 3
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199