python3.9安装scrapy,python安装scrapy
本文主要介绍Centos中python3和scapy模块的安装。这篇文章给你做了非常详细的介绍,对你的学习或者工作有一定的参考价值。有需要的朋友可以参考一下。
00-1010 I. CentOS安装Python3 II。安装scapy模块
目录
Centos7自带python2.7。
如果3.0以上版本需要手动安装,下载地址是https://www.python.org/ftp/python/.
1.首先,检查系统python的位置。
python在哪里
python2.7的默认安装在/usr/bin目录中,切换到/usr/bin/
cd /usr/bin/
ll python*
从下图可以看出,python指向python2,python2指向python2.7,那么我们可以安装python3,然后删除python链接,python3指向python3,python2指向python2.7,那么两个版本的python就可以共存了。
2.在下载python3的包之前,您应该先安装相关的依赖包,用于下载和编译python3:
yum install zlib-devel bzip2-devel OpenSSL-devel ncurses-devel SQLite-devel readline-devel tk-devel gcc make
运行上述命令后,用于编译python3的依赖项就安装好了。
3.默认的centos7是没有安装pip。首先添加epel扩展源。
yum -y安装epel-释放
4.安装pip
pip安装wget
5.用pip安装wget
pip安装wget
6.用wget下载python3的源码包,或者自己先下载,上传到服务器再安装。如果网络快,可以直接安装。
wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tar.xz
7.编译python3源码包并解压。
xz -d Python-3.9.6
tar-xf Python-3.9.6.tar
8.进入解压后的目录,依次执行以下命令进行手动编译。
cd Python-3.9.6。/configure prefix=/usr/local/python 3
制作制作安装
注意:
安装期间报告的错误:
ModuleNotFoundError: No module named _ctypes
make: *** [install] Error 1
问题的原因:
python3中有一个内置模块叫ctypes,是python3的外部函数库模块,提供与C语言兼容的数据类型,通过它调用Linux系统下的共享库。该模块需要使用centos7系统中外函数库的开发链接库(头文件和链接库)。
由于centos7系统中没有安装外部函数库(libffi)的开发链接库包,安装pip时报错“modulenotunderror 3360 no module name _ ctypes 。
解决方法:
ash;">yum install -y libffi-devel
# 如果没有yum源,可下载包上传
https://vault.centos.org/
然后重新./configure... make ... make install
9、安装依赖zlib、zlib-deve
yum install zlib zlibyum install zlib zlib-devel
10、最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有python3目录
11、添加软链接,将原来的链接备份
mv /usr/bin/python /usr/bin/python.bak
12、添加python3的软链接
ln -s /usr/local/python3/bin/python3.9 /usr/bin/python3
13、测试是否安装成功了
python3 -V
14、更改yum配置,因为其要用到python2才能执行,否则会导致yum不能正常使用
vi /usr/bin/yum
15、把第一行的#! /usr/bin/python 修改为如下
#! /usr/bin/python2
16、还有一个地方也需要修改
vi /usr/libexec/urlgrabber-ext-down
17、把第一行的#! /usr/bin/python 修改如下
#! /usr/bin/python2
18、启动python2
python2
19、启动python3
python3
二、安装scapy模块
Scapy是一个强大的基于Python的交互式包操作程序和库。 它能够伪造或解码大量协议的数据包,在有线上发送它们,捕获它们,使用pcapfile存储或读取数据包,匹配请求和答复,等等。 它被设计为通过使用可用的默认值来允许快速的数据包原型化。 它可以轻松地处理大多数经典任务,如扫描、跟踪、探测、单元测试、攻击或网络发现(它可以替换hping,85%nmap, arpspoof, arp-sk, arping, tcpdump, wireshark, p0f等等)。它还能很好地执行大多数其他工具无法处理的许多其他特定任务,如发送无效帧、注入您自己的802.11帧、组合技术(VLAN跳变+ARP缓存中毒、WEP保护信道上的VoIP解码等)。
1、yum安装相关依赖程序
yum -y install tcpdump graphviz ImageMagick
2、到GitHub上下载安装包,进行编译安装
#https://github.com/secdev/scapycd scapy-master/
python3 setup.py install
3、创建软链接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/pythonln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip
ln -s /usr/local/python3/bin/scapy /usr/bin/scapy
4、scapy生成动态路由轨迹图代码示例
#!/usr/bin/python3#-*-coding:UTF-8-*-
import os,sys,time,subprocess
import logging,warnings
warnings.filterwarnings("ignore",category=DeprecationWarning) #屏蔽scapy无用警告信息
logging.getLogger("scapy.runtime").setLevel(logging.ERROR) #屏蔽模块IPV6多余警告
from scapy.all import traceroute
domains = input(请输入IP地址或域名地址:)
target = domains.split( )
dport = [80] #扫描的端口列表
if len(target) >=1 and target[0] !=:
res,unans = traceroute(target,dport=dport,retry=2) #启动路由跟踪
res.graph(target="> test.svg") #生成svg矢量图形
time.sleep(1)
subprocess.Popen("/usr/bin/convert test.svg test.png", shell=True)
#svg转png格式
else:
print(IP/domain number of errors,exit)
到此这篇关于Centos安装python3与scapy模块的文章就介绍到这了,更多相关Centos安装python3内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。