作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想通过 python 嗅探我计算机中的所有 HTTP 数据包(版本 2.6.. 这可能吗?我可以使用 scapy 来实现吗,或者没有其他外部模块?
最佳答案
Scrapy仅用于从网页或类似结构化文档中提取数据。
要实际读取来自 NIC 的数据包,您的最佳性能选择可能是使用具有 python 绑定(bind)的 C/C++ API。
例如 WireShark 有一个 Python API .
Pcapy是一个使用 libpcap 进行数据包捕获的模块。
LibPCAP是为 TCPDUMP 编写的数据包捕获库,也用于 WireShark。
另一种选择是尝试 dpkt python 模块。这是一个不错的 write up .这是一个 example使用 dpkt 和 pcap 嗅探 HTTP 数据包。
编辑:糟糕,我误读了 scapy。感谢根!
如您所述,Scapy是另一个也使用 LibPCAP 的 python 模块。这documentation有一个嗅探的例子。
如果您在 Python 2.7 上运行时遇到问题,请查看此 post .
关于python - 如何在 python 中嗅探 HTTP 数据包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15906308/
我是一名优秀的程序员,十分优秀!