python-3.x - 如何使用scapy像wireshark一样捕获流量?
问题描述
我使用 Wireshark 来捕获浏览某个网站的流量,并使用 ip.src 和 ip.dst 来获取正确的流量。
我想使用 Scapy 以编程方式执行此操作。任何人都知道如何实现这一目标?
解决方案
使用 Scapy 及其精彩的文档,创建一个 Python 脚本。在脚本中,定义一个函数,作为接收数据包的回调处理程序,并在脚本的主要部分使用该sniff()
函数:
def packetReceived(packet):
print("Packet received!")
sniff(filter="host xx.xx.xx.xx and host xx.xx.xx.xx and tcp port 80", prn=packetReceived)
显然,更改 BPF 过滤器以匹配您的目标主机。
推荐阅读
- postgresql - 无法在 h2 内存数据库上运行测试,而是在 PostgreSQL 上运行
- android - 如何从 Firebase 中的实时数据库中获取数组
- arrays - React - 使用 .map 和 .fill 用随机数填充二维数组
- arduino - Arduino if 语句始终为真
- oracle - 为什么 Oracle 在 UWP 的 .net 标准中崩溃但 winform 没有?
- c# - 如何获取元素的 x 和 y 位置,以便在 WPF C# 应用程序中将新控件放置在其附近
- c - 如何读入二进制文件并将数据存储在C中的指针处
- c# - C#:全局鼠标事件处理程序仅触发一次
- typescript - 打字稿 - 前面 - 我想合并静态导入,但不合并动态导入
- python - 带有打印语句的VS代码python调试器错误