python2.7编译安装升级python3并安装Scrapy
一.安装python3
1.wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
2.编译安装,在编译安装前需要构建编译环境,安装gcc
yum -y install gcc
3.安装完成之后,我们输入python,这个时候任然是python2版本,需要重新定义软连接,重新建立指向 find / -name python3
mv /usr/bin/python /usr/bin/python27
ln -s /usr/python/bin/python3 /usr/bin/python
python3.5安装报错
python3.5: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file: No such file or directory
原因是因为python运行时没有加载到libpython3.5m.so.1.0 这个库文件将其复制到响应目录OK 解决方法:
[root@www Python-3.5.0]# cd /root/test/Python-3.5.0 进入解压后的编译目录
[root@www Python-3.5.0]# cp libpython3.5m.so.1.0 /usr/local/lib64/
[root@www Python-3.5.0]# cp libpython3.5m.so.1.0 /usr/lib/
[root@www Python-3.5.0]# cp libpython3.5m.so.1.0 /usr/lib64/
4.这个时候,我们的yum命令就是无法使用了,因为默认的yum是只支持python2版本,我们可以简单设置一下即可,如下:
修改yum配置文件(vi /usr/bin/yum)。
把文件头部的#!/usr/bin/python改成#!/usr/bin/python27保存退出即可
二.安装python包管理工具pip
在第一步,我们安装好了pyhton3的环境,接下来,我们就基于python3版本来安装相应的pip工具,pip默认是依赖于setuptools的
1. wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
解压安装
tar -zxf setuptools-19.6.tar.gz
cd pip-9.0.1
python setup.py install
2.wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz
解压安装
tar -zxf pip-9.0.1.tar.gz
cd pip-9.0.1
python setup.py install
建立软连接 ln -sv /usr/python/bin/pip /usr/bin/pip -->find / -name pip
三.安装Scrapy爬虫环境
可以直接使用pip工具来进行包的安装
1.测试一:安装requests
[root@liuge ~]# pip install -i https://pypi.douban.com/simple/ requests
看是否安装其他依赖 yum -y install openssl openssl-devel
2.测试安装scrapy环境
[root@liuge python35]# pip install -i https://pypi.douban.com/simple/ scrapy
发现,找不到Twisted
我们需要手动安装Twisted
[root@liuge ~]# wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.2.1.tar.bz2
[root@liuge ~]# bzip2 -d Twisted-15.2.1.tar.bz2
[root@liuge ~]# tar xf Twisted-15.2.1.tar
[root@liuge ~]# cd Twisted-15.2.1/
[root@liuge Twisted-15.2.1]# python setup.py install
若报错
Downloading packages:
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
则 vim /usr/libexec/urlgrabber-ext-down 将原来的 /usr/bin/python 改成 /usr/bin/python2.7 就行
再重新安装
pip install -i https://pypi.douban.com/simple/ scrapy

python -m pip install --upgrade pip 升级pip
sudo pip install twisted --upgrade 升级twisted
建立软连接 ln -s /usr/python/bin/scrapy /usr/bin/scrapy -->find / -name scrapy 若pip insatall twisted 安装的版本低 不能支持python3.5 去官网下载一个高版本 wget https://twistedmatrix.com/Releases/Twisted/17.9/Twisted-17.9.0.tar.bz2 重新编译安装
scrapy -V
到此安装完成
推荐python豆瓣镜像源:
pip install -i https://pypi.douban.com/simple/
找扩展依赖包地址:
www.lfd.uci.edu/~gohlke/pythonlibs/
有时候,需要这样替换
pip install requests -i http://pypi.douban.com/simple/ –trusted-host pypi.douban.com
python2.7编译安装升级python3并安装Scrapy的更多相关文章
- mac 安装升级python3
如果没有安装过python3的话那就直接下载dmg文件安装升级,一般下载安装后的路径为 /Library/Frameworks/Python.framework/Versions 如果同时安装了多个p ...
- Python2.7的安装、python3的安装
>登录python官网下载python2.7的相关版本 python官网链接 >根据平台选择相应的版本 >下载完毕后点击安装即可 >配置环境变量 >安装成功 2 pyth ...
- Ubuntu18.04 升级python3后 安装pip3 后报错
pip3 -VTraceback (most recent call last): File , in <module> from pip._internal import main Mo ...
- 【Mac】解决macos安装升级时报错安装所选更新时发生错误的问题
1 系统更新macjave 更新一直失败: 2 解决方法为:重新启动Mac,并按住Command+R进入恢复模式,找到Terminal后输入csrutil disable,然后重启Mac,再次下载并 ...
- Python3虚拟环境安装:virtualenv、virtualenvwralpper
一:通过pip3(因python2和3共存,前文修改过pip3软连接,pip3可以安装到python3)安装virtualenv,pip3 install virtuale 二:建立虚拟环境文件目录 ...
- 2018超详细sublime text3+python3.x安装配置教程(附常用插件安装教程)
导读 本文是关于2018年7月最新版sublime text3+pythin3.x下载及安装配置教程,sublime text3版本为3176,python版本为3.7,安装环境是基于windows1 ...
- Linux下python安装升级详细步骤 | Python2 升级 Python3
Linux下python升级步骤 Python2 ->Python3 多数情况下,系统自动的Python版本是2.x 或者yum直接安装的也是2.x 但是,现在多数情况下建议使用3.x 那么如 ...
- CentOS6.x 安装升级Python2.7.x Python3.4.x
CentOS6.x 安装升级Python2.7.x Python3.4.x 2015-06-07• CentOS.Linux • 评论关闭 CentOS release 6.6 (Final) 安装升 ...
- Linux下python安装升级详细步骤 | Python2 升级 Python3 转载
Linux下python升级步骤 Python2 ->Python3 多数情况下,系统自动的Python版本是2.x 或者yum直接安装的也是2.x 但是,现在多数情况下建议使用3.x 那么如 ...
随机推荐
- Layui我提交表单时,table.reload(),表格会请求2次,是为什么?
重载两次是因为搜索按钮用的是button 改成<a class="layui-btn" data-type="reload">搜索</a> ...
- 关于java自学的内容以及感受
这周主要学习了关于数组方面的知识包括一维数组以及多维数组(他们所储存数据默认值为0),以下为我根据相关知识编写的简单程序: public class test { public static void ...
- Java基础知识笔记第八章:常用的实体类
String类 String类位于lang包下 java会默认导入lang包下的类,所以可以直接使用,注意String是final类所以不能有子类 构造String对象: 常量对象:String常量也 ...
- ab的压力测试(转)
其中-n代表请求数,-c代表并发数 返回结果: ##首先是apache的版本信息 This is ApacheBench, Version 2.3 <Revision:655654> Co ...
- IIS URL Rewrite(URL 重写)-使用教程
IIS URL Rewrite(URL 重写)-使用教程 作者:vkvi 来源:千一网络(原创) 日期:2011-8-17 http://www.cftea.com/c/2011/08/9CRXOL ...
- 「SP10628 COT - Count on a tree」
主席树的综合运用题. 前置芝士 可持久化线段树:其实就是主席树了. LCA:最近公共祖先,本题需要在\(\log_2N\)及以内的时间复杂度内解决这个问题. 具体做法 主席树维护每个点到根节点这一条链 ...
- MySQL的默认隔离级别的实现依赖于MVCC和锁,准确点说就是一致性读和锁。
MySQL的默认隔离级别的实现依赖于MVCC和锁,准确点说就是一致性读和锁.
- FFmpeg——命令笔记
1. 获取 dshow设备列表 ffmpeg -list_devices true -f dshow -i dummy 2. 通过UDP流推ts文件: ffmpeg.exe -re -i zhen.t ...
- Jsp和Servlet关系
为什么会出现Jsp? 其实对于服务器来说它只认识Servlet,我们完全可以在Servlet用resp.getWriter().write("");画出网页的界面,但是仅仅一个很简 ...
- 虚拟对抗训练(VAT):一种用于监督学习和半监督学习的正则化方法
正则化 虚拟对抗训练是一种正则化方法,正则化在深度学习中是防止过拟合的一种方法.通常训练样本是有限的,而对于深度学习来说,搭设的深度网络是可以最大限度地拟合训练样本的分布的,从而导致模型与训练样本分布 ...