将scapy导入到搅拌机

时间:2016-01-01 10:05:19

标签: python blender scapy

我正在尝试将scapy模块导入blender:

from bge import logic
import socket
from scapy.all import *

但我面对这个例外:

enter image description here

我将scapy模块文件夹复制到:

C:\ Program Files \ Blender Foundation \ Blender \ 2.75 \ scripts \ modules

这就是它所包含的内容:

enter image description here

注意所有和base_classes都在其中。

另外我试图在环境变量中添加PYTHONPATH(我是 不确定这是我必须要做的......我也尝试添加

C:\ Program Files \ Blender Foundation \ Blender \ 2.75 \ scripts \ modules \ scapy

在PATH和PYTHONPATH中,他们都没有解决问题):

enter image description here

编辑:

sambler所说的问题是我使用的scapy不支持python 3.x作为blender使用。 所以我从这里下载了支持python 3.x的更新的scapy版本:https://github.com/phaethon/scapy 并用旧的scapy替换它,现在它可以工作,但我不能嗅,发送或接收数据包:

enter image description here

enter image description here

2 个答案:

答案 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分支

查看scapy-python3