一.安装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的更多相关文章

  1. mac 安装升级python3

    如果没有安装过python3的话那就直接下载dmg文件安装升级,一般下载安装后的路径为 /Library/Frameworks/Python.framework/Versions 如果同时安装了多个p ...

  2. Python2.7的安装、python3的安装

    >登录python官网下载python2.7的相关版本 python官网链接 >根据平台选择相应的版本 >下载完毕后点击安装即可 >配置环境变量 >安装成功 2 pyth ...

  3. Ubuntu18.04 升级python3后 安装pip3 后报错

    pip3 -VTraceback (most recent call last): File , in <module> from pip._internal import main Mo ...

  4. 【Mac】解决macos安装升级时报错安装所选更新时发生错误的问题

    1 系统更新macjave 更新一直失败: 2  解决方法为:重新启动Mac,并按住Command+R进入恢复模式,找到Terminal后输入csrutil disable,然后重启Mac,再次下载并 ...

  5. Python3虚拟环境安装:virtualenv、virtualenvwralpper

    一:通过pip3(因python2和3共存,前文修改过pip3软连接,pip3可以安装到python3)安装virtualenv,pip3 install virtuale 二:建立虚拟环境文件目录 ...

  6. 2018超详细sublime text3+python3.x安装配置教程(附常用插件安装教程)

    导读 本文是关于2018年7月最新版sublime text3+pythin3.x下载及安装配置教程,sublime text3版本为3176,python版本为3.7,安装环境是基于windows1 ...

  7. Linux下python安装升级详细步骤 | Python2 升级 Python3

    Linux下python升级步骤  Python2 ->Python3 多数情况下,系统自动的Python版本是2.x 或者yum直接安装的也是2.x 但是,现在多数情况下建议使用3.x 那么如 ...

  8. 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) 安装升 ...

  9. Linux下python安装升级详细步骤 | Python2 升级 Python3 转载

    Linux下python升级步骤  Python2 ->Python3 多数情况下,系统自动的Python版本是2.x 或者yum直接安装的也是2.x 但是,现在多数情况下建议使用3.x 那么如 ...

随机推荐

  1. ROS-debug1 : 运行roscore时报错:Unable to contact my own server at...

    一.问题描述 在终端运行roscore时,出现错误:Unable to contact my own server at...,如下图: 二.解决方法 以上问题是由于ROS环境变量ROS_MASTER ...

  2. mongodb插入性能

    转自 https://blog.csdn.net/asdfsadfasdfsa/article/details/60872180 MongoDB与MySQL的插入.查询性能测试     7.1  平均 ...

  3. Spring Boot + MyBatis + PostgreSql

    Maven构建项目 1.访问http://start.spring.io/ 2.选择构建工具Maven Project.Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch t ...

  4. windows下svn post-commit的实现

    前言: 好的!在结束了上一博客教程的Subversion安装之后.我们开始了下一项工作,windows版本下 svn post-commit的实现.说实话,这方面的知识网上的知识并不是很多~~~~~~ ...

  5. 基本使用-ElasticSearch

    基本使用-ElasticSearch 说明:本篇文章主要是通过springboot整合es的基本使用基础,详细了解的可以看我上一篇文章:全文搜索-ElasticSearch 有朋友私信我上一篇没有环境 ...

  6. mysql path妙用

    CREATE TABLE `lc_c_user_path` ( `id` INT ( ) UNSIGNED NOT NULL AUTO_INCREMENT, `user_id` VARCHAR ( ) ...

  7. jmeter学习笔记一foreach控制器

    ForEach控制器 输入变量前缀:上一步所提取的变量名的前缀,例如appid_1, 则appid就是前缀 start index for loop:循环的起始位置,默认为空也可 end index ...

  8. python的init函数里参数的作用

    问题发现 一直有一个疑问,有时我们在继承时,在__init__函数会出现可变参数*arg或关键字参数**kw这样的参数,这些参数有什么用?如果有用,这些参数时如何传递?传递些什么? 注:如果你不知道什 ...

  9. 关于HTTP 协议

    HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送 ...

  10. oracle随机生成时间

    Julian Date定义 Julian Date:有效的日期范围是从公元前4713年1月1日到公元9999年12月31日.儒略日(julian date)是自公元前4713年1月1日中午12时起经过 ...