Win10 anaconda python3.6 安装pcap

使用pip或者conda安装包时注意换好源,否则速度很慢。具体设置参见参考链接[4,5]。

使用Linux(物理主机或者虚拟机)安装pypcap包非常容易,不再赘述。Windows10系统上安装的坑很多,这里按照步骤做了具体说明。WinPcap和Win10存在兼容性问题,因此推荐使用Npcap替代WinPcap。Python的pcap模块是libpcap的Python打包版。安装pcap模块需要下载三个组件分别安装。

1)下载

Npcap https://nmap.org/npcap/

NpcapSDK https://nmap.org/npcap/

pypcap https://github.com/pynetwork/pypcap

 

2)安装

1)安装Npcap

打开安装程序即可。如果之前安装过winpcap,会先自动卸载。

2)安装pypcapNpcapSDK

1. 将NpcapSDK文件夹放到pypcap同级文件夹,文件夹命名为wpdpack

2. 打开anaconda prompt(脚本会自动设置python和conda的环境变量)

 

3. 进入pypcap所在目录中,执行python setup.py install

  如果提示缺少Visual C++ 14.0,则需要安装visual studio 2017,或者只安装缺少的开发工具。

Fixed Python3 on Windows 10 error Visual C++ 14.0 is required

(安装缺少的开发工具需要在线下载,由于网络问题,很可能下载不下来。)

 

4. 安装成功,回到python环境。测试import pcap,检验是否能用。没有报错,一切正常,则安装成功。

 

注意:

如果使用的是python3.7.2以上版本,可能会导致安装失败。(原因参见参考链接[3])。而如果用python3.6的版本,可以安装成功。

各虚拟环境的包是相互隔离并独立的,因此如果需要更换Python版本,则dpkt等包还需要重新安装,pycharm interpreter里面的配置也需要切换。

为了切换版本可以使用conda创建虚拟环境的方式实现。参见参考链接[2]。

 

 

 

 

 

 

Pycharm里面的环境管理:

添加的路径可以查到:

 

则选择相应的已创建的Conda Environment。(注意,下图中,New environment和用命令行conda create的效果一致)

 

 

选定并应用该解释器后,可以看到新的环境中只有dpkt、pypcap和默认的几个包。虚拟环境的好处就是在各环境下安装的包不会互相冲突,起到了类似程序中命名空间的作用。

 

5. 测试抓包

测试脚本:

import pcap

import dpkt

pc=pcap.pcap()    #注,参数可为网卡名,如eth0

pc.setfilter('tcp port 80')    #设置监听过滤器

for ptime,pdata in pc:    #ptime为收到时间,pdata为收到数据

    print(ptime,pdata)    #...

运行效果:

 

参考链接

[1]   https://visualstudio.microsoft.com/downloads/

[2]   使用Anaconda管理多个版本的Python环境

[3]   Python之pypcap库的安装及简单抓包工具的实现

[4]   Anaconda 镜像使用帮助

[5]   pypi 镜像使用帮助

猜你喜欢

转载自www.cnblogs.com/followyourheart/p/python_pypcap.html