我正在尝试将scapy模块导入blender:
from bge import logic
import socket
from scapy.all import *
但我面对这个例外:
我将scapy模块文件夹复制到:
C:\ Program Files \ Blender Foundation \ Blender \ 2.75 \ scripts \ modules
这就是它所包含的内容:
注意所有和base_classes都在其中。
另外我试图在环境变量中添加PYTHONPATH(我是 不确定这是我必须要做的......我也尝试添加
C:\ Program Files \ Blender Foundation \ Blender \ 2.75 \ scripts \ modules \ scapy
在PATH和PYTHONPATH中,他们都没有解决问题):
编辑:
sambler所说的问题是我使用的scapy不支持python 3.x作为blender使用。 所以我从这里下载了支持python 3.x的更新的scapy版本:https://github.com/phaethon/scapy 并用旧的scapy替换它,现在它可以工作,但我不能嗅,发送或接收数据包:
答案 0 :(得分:2)
此错误的直接原因是您在PYTHONPATH环境变量中没有C:\Program Files\Blender Foundation\Blender\2.75\scripts\modules
。它不是特定的Blender问题,它是加载第三方软件包的一般Python要求。
您可以尝试将PYTHONPATH
添加为此问题中描述的全局每用户环境变量:How to add to the pythonpath in windows 7?
答案 1 :(得分:1)
错误的屏幕截图中有两件事可以解决问题 -
L
0xFFL
C:\Python27\scapy\base_classes.py
从2.50开始,blender使用python 3.x,导致异常的错误(L指定long int)是在3.0中删除的python 2.7语言特性。
快速搜索显示已经使用了python3
的scapy分支