首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在我的文件中导入scapy.all有问题

在我的文件中导入scapy.all有问题
EN

Stack Overflow用户
提问于 2021-07-19 19:31:44
回答 2查看 607关注 0票数 0

在我的Ubuntu虚拟机中导入替罪羊时,我遇到了问题。

我可以很容易地在终端上使用from scapy.all import *

我使用的是Visual代码,当我悬停在替罪羊上时,右击并进入定义,它会带我到替罪羊文件。

下面是我见过和尝试过的解决方案:

  1. 我的文件名(或文件夹中的任何文件名)不是"scapy.py“。
  2. 我已经安装了替罪羊直接从网站,使用"sudo apt-获取安装python3 3-替罪羊“,也尝试了"pip安装替罪羊”。所有这些都没有改变什么。
  3. 如果我运行另一个python文件(没有"sudo“,并使用"from scapy.all import *"),它就运行得很好。但是当我使用"sudo“时有一个重要的问题。
  1. 我试图做以下工作来解决我的问题:
代码语言:javascript
复制
- Type in the terminal:

sudo mkdir /usr/lib/python2.7/dist-packages/scapy

cd /usr/lib/python3/dist-packages/

cp -avr scapy/* /usr/lib/python2.7/dist-packages/scapy\

这也没能解决。

  1. 我还以为我搞砸了一些模块文件。所以我试着在一个新的VirtualBox图像上做所有的事情。但这也失败了。
  2. 我可以在终点站输入“替罪羊”,这样就可以打开了。

我的python版本是3.8.10

Scapy版本: 2.4.5

我被困在这上面已经四天了。请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2021-07-19 22:58:13

建议使用virtualenv,如果您有多个python版本,它将解决冲突。

  • 通过以下命令创建虚拟环境 virtualenv env -p python3
  • 然后激活它 source env/bin/activate
  • 然后使用pip安装替身: pip install scapy

并尝试从那里导入库。

票数 0
EN

Stack Overflow用户

发布于 2021-07-20 08:05:46

安装在非root用户上的包不会在系统范围内安装,因此,当您以root用户的身份运行脚本时,会出现导入问题。

可以使用的一些解决方案:

  1. 也将scapy安装到root用户
  • 切换到根
代码语言:javascript
复制
sudo su
  • 安装替罪羊
代码语言:javascript
复制
pip install scapy
  • 然后,您可以在本地运行脚本,而不会出现任何问题。
代码语言:javascript
复制
sudo python3 script.py
  1. 或者,创建一个虚拟环境(recommended)并在那里安装
  • 创建虚拟环境
代码语言:javascript
复制
demo@stack:~/demo$ virtualenv venv
  • 激活虚拟环境
代码语言:javascript
复制
demo@stack:~/demo$ source venv/bin/activate
  • 通过pip将scapy安装到新的虚拟环境中。
代码语言:javascript
复制
(venv) demo@stack:~/demo$ pip install scapy
  • 现在,您可以使用超级用户权限运行脚本,而无需发出任何问题。
代码语言:javascript
复制
(venv) demo@stack:~/demo$ sudo python3 script.py
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68446054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档