Centos7搭建Scrapy爬虫环境
写在前面
因为之前的爬虫环境一直是部署在我自己本地的电脑上的,最近,写了一个监控别人空间的爬虫,需要一直线上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
发现缺少模块
- 安装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爬虫环境的更多相关文章
- scrapy爬虫学习系列一:scrapy爬虫环境的准备
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...
- Linux搭建Scrapy爬虫集成开发环境
安装Python 下载地址:http://www.python.org/, Python 有 Python 2 和 Python 3 两个版本, 语法有些区别,ubuntu上自带了python2.7. ...
- windows7 64位下环境搭建scrapy爬虫框架
适用于python 2.7 64位安装 一.操作系统:WIN7 64位 二.python版本:2.7 64位(scrapy目前不支持3.x) 不确定位数的,看图
- Centos7搭建php+mysql环境(整理篇)
终于将mysql+php环境搭建成功,将之前的整理一下,环境:centos7,本机IP:192.168.1.24,数据库用户名及密码都设为root,测试文件路径:/var/www/html 1.取消c ...
- 使用scrapy-redis搭建分布式爬虫环境
scrapy-redis简介 scrapy-redis是scrapy框架基于redis数据库的组件,用于scrapy项目的分布式开发和部署. 有如下特征: 分布式爬取 您可以启动多个spider工 ...
- 使用scrapy-redis 搭建分布式爬虫环境
scrapy-redis 简介 scrapy-redis 是 scrapy 框架基于 redis 数据库的组件,用于 scraoy 项目的分布式开发和部署. 有如下特征: 分布式爬取: 你可以启动多个 ...
- centos7搭建.netcore运行环境
开发环境介绍 1.操作系统:Windows Server 2008 R2 Enterprise 2.IDE:VisualStudio2017 3..Net Core 2.0 SDK 本文假设你已经满足 ...
- 阿里云centos7搭建php+nginx环境
阿里云Centos搭建lnmp(php7.1+nginx+mysql5.7) https://jingyan.baidu.com/article/215817f7a10bfb1eda14238b.ht ...
- 【linux】【Fabric】Centos7搭建Fabric运行环境
1.安装jdk1.8配置环境变量 参考:https://www.cnblogs.com/jxd283465/p/11541506.html 2.安装git yum -y install git 3.安 ...
随机推荐
- (四十九)c#Winform自定义控件-下拉框(表格)
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:ht ...
- 【乘风破浪】Android系统启动流程整理
前言 对于一个Android应用层开发者来说,了解Android系统的启动流程对理解Android系统有很大的帮助.这其中包含了大量的细节,而且前面很多步骤包含了C/C++实现的native层逻辑,作 ...
- Spring学习之旅(十五)--SpringBoot
在使用 Spring 的过程中,有时候会出现一些 ClassNotFoundException 异常,这是因为 JAR 依赖之间的版本不匹配所导致的.而 Spring Boot 就能避免绝大多数依赖版 ...
- Java连载23-for循环练习、while\dowhile详解
一.for循环练习 1.例子:输入九九乘法表 public class d23_{ public static void main(String[] args) { for(int i = 1;i&l ...
- 2020届京东秋招正式批一面记录-Java开发-2019.08.31
京东一面总结 总共时间持续时间约40分钟 1.你用过集合类里面哪些是线程安全的,哪些是线程不安全的?分别举两个例子? 线程安全:HashTable以及ConcurrentHashMap 非线程安全:A ...
- redis之mq实现发布订阅模式
示例代码-github 概述 Redis不仅可作为缓存服务器,还可用作消息队列,本示例演示如何使用redis实现发布/订阅消息队列. 在Redis中,发布者没有将消息发送给特定订阅者的程序.相反,发布 ...
- poj 1062 昂贵的聘礼(floyd path的应用)
题目链接:http://poj.org/problem?id=1062 题意就不解释了中问题. 这题用dfs也行.但是感觉还是floyd比较好一点主要是他们交易是有条件的交易总的等级差不能超过m 所以 ...
- 新书推荐《再也不踩坑的Kubernetes实战指南》
<再也不踩坑的Kubernetes实战指南>终于出版啦.目前可以在京东.天猫购买,京东自营和当当网预计一个星期左右上架. 本书贴合生产环境经验,解决在初次使用或者是构建集群中的痛点,帮 ...
- Java并发笔记——单例与双重检测
单例模式可以使得一个类只有一个对象实例,能够减少频繁创建对象的时间和空间开销.单线程模式下一个典型的单例模式代码如下: ① class Singleton{ private static Single ...
- php文件加密解密
利用base64加解密 base64_encode是加密,而base64_decode是解密 语法:string base64_encode(string data); 语法:string bas ...