在Python3上安装dpkt

在Python3上安装dpkt,python,installation,dpkt,Python,Installation,Dpkt,我试图在python 3上安装dpkt,安装时出现以下错误: (venv)[root@miura dpkt-1.8]# python setup.py install Traceback (most recent call last): File "setup.py", line 4, in <module> import dpkt File "/root/dpkt-1.8/dpkt/__init__.py", line 13, in <module>

我试图在python 3上安装dpkt,安装时出现以下错误:

(venv)[root@miura dpkt-1.8]# python setup.py install
Traceback (most recent call last):
  File "setup.py", line 4, in <module>
    import dpkt
  File "/root/dpkt-1.8/dpkt/__init__.py", line 13, in <module>
    import ah
ImportError: No module named 'ah'
(venv)[root@miuradpkt-1.8]#python setup.py安装
回溯(最近一次呼叫最后一次):
文件“setup.py”,第4行,在
进口dpkt
文件“/root/dpkt-1.8/dpkt/_init__.py”,第13行,在
进口啊
导入错误:没有名为“ah”的模块
我错过了什么?我看到“ah”是导入的第一个模块,ah.py在dpkt目录中


如果我尝试使用pip安装,也会遇到同样的问题。

我今天也遇到了这个问题

我尝试了在Python2.7下安装,它马上就可以工作了。从外观上看,Dpkt还没有更新到3.x版本

我使用Python 3.4附带的2to3工具来转换源代码:

python C:\Python34\Tools\Scripts\2to3.py -w dpkt-1.8
这对除ieee80211.py之外的所有文件都成功了,我必须手动编辑ieee80211.py以分离导入,以便读取:

from . import dpkt
import socket, struct
完成此操作后,您可以运行python 3.4并像通常一样使用setup.py安装

我还没有做任何广泛的测试,但是请记住,一个脚本转换了源代码


更新:我无法使用此方法读取pcap文件-似乎需要更仔细的移植。

从1.9.1版开始,dpkt支持Python 3