python3使用libpcap库进行抓包及数据处理

python版本:python 3.9
libpcap版本:1.11.0b7
python libpcap库是底层绑定c语言libpcap库的开发包 , 旨在提供python应用可访问的unix c libpcap库API(以及为win32系统提供的Npcap、WinPcap) , 直接使用底层c代码 , 性能很好 。这里记录下Windows 10 环境下python3.9如何安装及使用libpcap库(Linux和mac系统可参考Windows) 。pypi地址: https://pypi.org/project/libpcap/github 地址: https://github.com/karpierz/libpcap

python3使用libpcap库进行抓包及数据处理

文章插图
python3使用libpcap库进行抓包及数据处理

文章插图
一、安装libpcap库1、在线安装直接使用pip进行安装:pip install libpcap默认安装最新版本 。
python3使用libpcap库进行抓包及数据处理

文章插图
2、离线安装2.1 下载离线安装文件
可以在pypi页面源代码或whl文件 。
python3使用libpcap库进行抓包及数据处理

文章插图
2.2  执行离线安装操作
1) 可以使用源码进行安装
解压文件到当前目录 , 然后执行安装命令:
python -m pip install ./libpcap-1.11.0b7
python3使用libpcap库进行抓包及数据处理

文章插图
2)也可以使用whl文件进行离线安装
安装命令如下:
python -m pip install libpcap-1.11.0b7-py3-none-any.whl
python3使用libpcap库进行抓包及数据处理

文章插图
二、使用libpcap库1、导入及指定pcap库import libpcaplibpcap.config(LIBPCAP="wpcap")2、常用API介绍tcpdump就是以libpcap为基础实现的 , c语言libpcap的文档可以在tcpdump官网找的:
https://www.tcpdump.org/manpages/pcap.3pcap.html
python3使用libpcap库进行抓包及数据处理

文章插图
这里描述下python常用接口 。
2.1  获取网络设备接口
  • lookupdev(errbuf)
功能:该函数用于查找网络设备 , 返回的值可以被open_live函数直接调用 。
参数:

    经验总结扩展阅读