写在前面

因为之前的爬虫环境一直是部署在我自己本地的电脑上的,最近,写了一个监控别人空间的爬虫,需要一直线上24小时运行,所有就打算云服务器上部署环境,也捣鼓了好一会才弄好,还是有一些坑,这里先记录一下,方便以后复习...

一.替换pyhton2版本为python3

1.我这里的云服务器是Centos7系统,默认安装的是python2.7的版本,但是,我个人也是不喜欢老的东西,而且好像python2的版本到2020年就不再维护了,所以,我这里也推荐大家使用python3的版本



2.下载安装

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz

我下载的是python3.5的

接下来,就是编译安装,在编译安装前需要构建编译环境,安装gcc

yum -y install gcc

gcc安装的东西有点多,稍微等一下

然后,默认编译就好

接着,使用make & make install 安装,

这里的话 ,会多等一会儿 ,去喝杯茶先把,,哈哈 开玩笑的啦

3.安装完成之后,我们输入python,这个时候任然是python2版本,需要重新定义软连接,重新建立指向

mv /usr/bin/python /usr/bin/python27
ln -s /usr/local/bin/python3 /usr/bin/python

结果,发现python命令无效



如果还是不行的话,可以重新编译一下:

这个时候,我们的yum命令就是无法使用了,因为默认的yum是只支持python2版本,我们可以简单设置一下就可以啦,如下:

修改yum配置文件(vi /usr/bin/yum)。
把文件头部的#!/usr/bin/python改成#!/usr/bin/python27保存退出即可



这样就可以再次使用yum命令了

二.安装python包管理工具pip

在第一步,我们安装好了pyhton3的环境,接下来,我们就基于python3版本来安装相应的pip工具

1.pip默认是依赖于setuptools的

下载安装setuptools

wget --no-check-certificate  https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26

解压,安装,

python setup.py install

发现缺少模块

  1. 安装zlib模块
yum install zlib-devel -y

打开报错文件,



再次运行yum install zlib-devel -y

继续安装setuptools,这个时候我们需要python3对zlib模块的支持,所以,需要重新编译安装

1.    进入pyhton3文件目录
2. make & make install #编译安装

这样,就可以回到setuptools目录,进行安装

python setup.py install



安装成功

终于可以安装pip了

1.下载啊

[root@liuge ~]# wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz

2、解压pip安装包

tar -zxf pip-9.0.1.tar.gz

3、安装pip

cd pip-9.0.1
python setup.py install

三.安装Scrapy爬虫环境

这里我们就可以直接使用pip工具来进行包的安装了

1.测试一:安装requests

这里我使用豆瓣源

[root@liuge ~]# pip install -i https://pypi.douban.com/simple/ requests

百度搜索了一下错误,说是openssl相关软件没有安装,

openssl

openssl-devel

yum -y install openssl openssl-devel

接着重新编译安装:

[root@liuge python35]# make & make install

这样,再次刷一遍安装命令:

[root@liuge python35]# pip install -i https://pypi.douban.com/simple/ requests

2.测试二:安装scrapy环境

先上命令:

[root@liuge python35]# pip install -i https://pypi.douban.com/simple/ scrapy

发现,找不到Twisted

我们需要手动安装Twisted

1.下载啊

[root@liuge ~]# wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.2.1.tar.bz2

2.解压,安装

[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

继续安装scrapy

pip install -i https://pypi.douban.com/simple/ scrapy

到这里,我们的环境就安装完成了,简单总结下:

推荐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

谢谢======

Centos7搭建Scrapy爬虫环境的更多相关文章

  1. scrapy爬虫学习系列一:scrapy爬虫环境的准备

    系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...

  2. Linux搭建Scrapy爬虫集成开发环境

    安装Python 下载地址:http://www.python.org/, Python 有 Python 2 和 Python 3 两个版本, 语法有些区别,ubuntu上自带了python2.7. ...

  3. windows7 64位下环境搭建scrapy爬虫框架

    适用于python 2.7 64位安装 一.操作系统:WIN7 64位 二.python版本:2.7 64位(scrapy目前不支持3.x) 不确定位数的,看图

  4. Centos7搭建php+mysql环境(整理篇)

    终于将mysql+php环境搭建成功,将之前的整理一下,环境:centos7,本机IP:192.168.1.24,数据库用户名及密码都设为root,测试文件路径:/var/www/html 1.取消c ...

  5. 使用scrapy-redis搭建分布式爬虫环境

    scrapy-redis简介 scrapy-redis是scrapy框架基于redis数据库的组件,用于scrapy项目的分布式开发和部署. 有如下特征:  分布式爬取 您可以启动多个spider工 ...

  6. 使用scrapy-redis 搭建分布式爬虫环境

    scrapy-redis 简介 scrapy-redis 是 scrapy 框架基于 redis 数据库的组件,用于 scraoy 项目的分布式开发和部署. 有如下特征: 分布式爬取: 你可以启动多个 ...

  7. centos7搭建.netcore运行环境

    开发环境介绍 1.操作系统:Windows Server 2008 R2 Enterprise 2.IDE:VisualStudio2017 3..Net Core 2.0 SDK 本文假设你已经满足 ...

  8. 阿里云centos7搭建php+nginx环境

    阿里云Centos搭建lnmp(php7.1+nginx+mysql5.7) https://jingyan.baidu.com/article/215817f7a10bfb1eda14238b.ht ...

  9. 【linux】【Fabric】Centos7搭建Fabric运行环境

    1.安装jdk1.8配置环境变量 参考:https://www.cnblogs.com/jxd283465/p/11541506.html 2.安装git yum -y install git 3.安 ...

随机推荐

  1. (四十九)c#Winform自定义控件-下拉框(表格)

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:ht ...

  2. 【乘风破浪】Android系统启动流程整理

    前言 对于一个Android应用层开发者来说,了解Android系统的启动流程对理解Android系统有很大的帮助.这其中包含了大量的细节,而且前面很多步骤包含了C/C++实现的native层逻辑,作 ...

  3. Spring学习之旅(十五)--SpringBoot

    在使用 Spring 的过程中,有时候会出现一些 ClassNotFoundException 异常,这是因为 JAR 依赖之间的版本不匹配所导致的.而 Spring Boot 就能避免绝大多数依赖版 ...

  4. Java连载23-for循环练习、while\dowhile详解

    一.for循环练习 1.例子:输入九九乘法表 public class d23_{ public static void main(String[] args) { for(int i = 1;i&l ...

  5. 2020届京东秋招正式批一面记录-Java开发-2019.08.31

    京东一面总结 总共时间持续时间约40分钟 1.你用过集合类里面哪些是线程安全的,哪些是线程不安全的?分别举两个例子? 线程安全:HashTable以及ConcurrentHashMap 非线程安全:A ...

  6. redis之mq实现发布订阅模式

    示例代码-github 概述 Redis不仅可作为缓存服务器,还可用作消息队列,本示例演示如何使用redis实现发布/订阅消息队列. 在Redis中,发布者没有将消息发送给特定订阅者的程序.相反,发布 ...

  7. poj 1062 昂贵的聘礼(floyd path的应用)

    题目链接:http://poj.org/problem?id=1062 题意就不解释了中问题. 这题用dfs也行.但是感觉还是floyd比较好一点主要是他们交易是有条件的交易总的等级差不能超过m 所以 ...

  8. 新书推荐《再也不踩坑的Kubernetes实战指南》

      <再也不踩坑的Kubernetes实战指南>终于出版啦.目前可以在京东.天猫购买,京东自营和当当网预计一个星期左右上架. 本书贴合生产环境经验,解决在初次使用或者是构建集群中的痛点,帮 ...

  9. Java并发笔记——单例与双重检测

    单例模式可以使得一个类只有一个对象实例,能够减少频繁创建对象的时间和空间开销.单线程模式下一个典型的单例模式代码如下: ① class Singleton{ private static Single ...

  10. php文件加密解密

    利用base64加解密 base64_encode是加密,而base64_decode是解密 语法:string base64_encode(string data);   语法:string bas ...