在公司开发部干活的好处是可以再分配一台高性能的PC,有了新的工作电脑,原来分配的笔记本电脑就可以安装linux系统做开发了,主要有两方面的开发计划,一个是计划中要参与爬虫系统的开发,第二个是大数据环境的安装和测试。

选择centos

既然选择了要做linux开发了,选择哪个系统版本就成立一个问题。以前学OS系统时候,用过ubuntu,GUI感觉和用老版本的windows比较像(后来ubuntu12的GUI惊艳了我),和windows环境的差异感比较小。

最后决定是centos,最重要的原因是公司都在往centos7上迁移,并且目前国内的互联网公司也主要是centos为主吧,参考为什么国内互联网公司喜欢用Centos而不是Ubuntu?。另外centos也比较能锻炼人吧,后面配置环境的经历确实让我感觉很受锻炼,遇到更多问题,还重装了N次系统。

用U盘刻了CentOS-7-x86_64-Everything-1511版本,目前最新的应该是7.3.1611,不过差别不太大。安装步骤说明:

首先参考这两份文档:U盘安装win8(win7)+centos7双系统 Win10下安装CentOS 7双系统详解

  • 修改BIOS的boot顺序,改为U盘启动。
  • 进入Centos的安装界面小黑屏,有三个选择,先别管那么多,按一下TAB键修改安装的位置,避免进入默认的网络安装。下图中第二份教程中的这个图片有点问题,不一定能找出来,建议使用这个命令找到U盘的盘符名,类似sda1,sdb2,sdc3这种。
  1. vmlinuz initrd=initrd.img linux dd

  • 找到插入的U盘的盘符后(假设为sdc4),按电源键强制重启再进入,再按TAB键,这次修改为
  1. vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdc4 quite

更新yum源

centos是使用yum来在线安装软件的,也比较好用,能管理依赖关系。如果yum安装不成功,就要手工下载rpm包或者源码进行make install。

因为众所周知的原因,国内用centos默认yum源会比较慢,所以需要更新为国内的软件源。我用了阿里云的源,具体更新步骤如下:

  1. sudo -i
  2. cd /etc/yum.repos.d/
  3. mv CentOS-Base.repo CentOS-Base.repo.save
  4. wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  5. yum clean all
  6. yum makecache
  7. yum -y update
  8. yum install python-setuptools
  9. easy_install pip

好,上述步骤完成后,我们就把python的pip工具安装好了。不过python还是2.7.5版本的,之前有升级过2.7.13,但是后来yum就各种傻逼了,所以暂时先不升级2.7.13。

python的开发环境

因为后续可能涉及python2和python3的开发项目,需要把每个项目环境独立开来,这里通过virtualenv和virtualenvwrapper来解决。执行下面的步骤:

  1. sudo yum -y install python-virtualenv
  2. sudo easy_install virtualenvwrapper
  3. mkdir py_vm
  4. export WORKON_HOME=/home/kejun/py_vm
  5. source /usr/bin/virtualenvwrapper.sh
  6. mkvirtualenv spider

执行上述的指令,我们就完成了爬虫的虚拟环境的安装,现在继续安装在windows开发的环境中用到的python第三方包。

这边介绍一款可以按项目导出需求包的工具pipreqs。以创建的第一个爬虫项目kejun_first_crawler为例。执行下面的命令:

  1. pip install pipreqs
  2. pipreqs D:\PWorkspace\kejun_first_crawler

成功运行后,可以看到下图:



打开目录下的requirements.txt,可以看到

chardet==2.3.0

Scrapy==1.3.2

selenium==3.0.2

beautifulsoup4==4.5.3

python_dateutil==2.6.0

也就是说运行该爬虫项目需要的就只要上述5个第三方包就行了。然后按照下面的指令完成导入到虚拟项目spider中就行了,这样可以做到相对的隔离。

  1. pip install -r requirements.txt

搭建centos7的开发环境1-系统安装及Python配置的更多相关文章

  1. 搭建centos7的开发环境3-Spark安装配置

    说起大数据开发,必然就会提到Spark,在这片博文中,我们就介绍一下Spark的安装和配置. 这是Centos7开发环境系列的第三篇,本篇的安装会基于之前的配置进行,有需要的请回复搭建centos7的 ...

  2. 搭建centos7的开发环境2-单机版Hadoop2.7.3配置

    最近公司准备升级spark环境,主要原因是生产环境的spark和hadoop版本都比较低,但是具体升级到何种版本还不确定,需要做进一步的测试分析.这个任务对于大数据开发环境配置有要求,这里记录一下配置 ...

  3. 从零开始搭建Go语言开发环境

    一步一步,从零搭建Go语言开发环境. 安装Go语言及搭建Go语言开发环境 下载 下载地址 Go官网下载地址:https://golang.org/dl/ Go官方镜像站(推荐):https://gol ...

  4. 安装Go语言及搭建Go语言开发环境

    一步一步,从零搭建Go语言开发环境. 安装Go语言及搭建Go语言开发环境 下载 下载地址 Go官网下载地址:https://golang.org/dl/ Go官方镜像站(推荐):https://gol ...

  5. GO学习-(2) 从零开始搭建Go语言开发环境

    从零开始搭建Go语言开发环境 一步一步,从零搭建Go语言开发环境. 安装Go语言及搭建Go语言开发环境 下载 下载地址 Go官网下载地址:https://golang.org/dl/ Go官方镜像站( ...

  6. 用grunt搭建web前端开发环境

    1.前言 本文章旨在讲解grunt入门,以及讲解grunt最常用的几个插件的使用. 2.安装node.js Grunt和所有grunt插件都是基于nodejs来运行的,如果你的电脑上没有nodejs, ...

  7. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

  8. 使用IntelliJ IDEA 13搭建Android集成开发环境(图文教程)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  9. 搭建Android底层开发环境

    为了开发linux驱动方便些,我们一般将linux作为Android的开发环境,那么就需要搭建Android的开发环境,下面是一些搭建Android底层时的心得: (1)安装JDK:除了普遍使用的下载 ...

随机推荐

  1. Android(Lollipop/5.0) Material Design(二) 入门指南

    Material Design系列 Android(Lollipop/5.0)Material Design(一) 简介 Android(Lollipop/5.0)Material Design(二) ...

  2. Linux 句柄是什么 ?

    1.句柄就是一个标识符,只要获得对象的句柄,我们就可以对对象进行任意的操作. 2.句柄不是指针,操作系统用句柄可以找到一块内存,这个句柄可能是标识符,map的key,也可能是指针,看操作系统怎么处理的 ...

  3. 认证模式之Digest模式

    TTP协议规范的另一种认证模式是Digest模式,在HTTP1.1时被提出来,它主要是为了解决Basic模式安全问题,用于替代原来的Basic认证模式,Digest认证也是采用challenge/re ...

  4. C++ Primer 有感(顺序容器)

    1.顺序容器的元素排列次序与元素的值无关,而是由元素添加到容器里的次序决定. 2. 顺序容器 vector                               支持快速随机访问 list   ...

  5. Darwin Streaming Server 安装流程

    Darwin StreamingServer 安装流程 Darwin StreamingServer 支持开放源代码和基于标准的实时传输协议/实时流协议(RTP/ RTSP).MPEG-4 和MP3 ...

  6. 用jquery+Asp.Net实现省市二级联动

    页面html: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ddlAjax. ...

  7. linux服务搭建----ftp与ftp yum源搭建

    ftp服务     如果没有ftp         yum -y install  vsftpd (前提是你在有yum源的情况下才可以使用这条命令)     service vsftpd  resta ...

  8. 数据挖掘进阶之关联规则挖掘FP-Growth算法

    数据挖掘进阶之关联规则挖掘FP-Growth算法 绪 近期在写论文方面涉及到了数据挖掘,需要通过数据挖掘方法实现软件与用户间交互模式的获取.分析与分类研究.主要涉及到关联规则与序列模式挖掘两块.关联规 ...

  9. android 高仿京东

    android 高仿京东源码,两年前的作品,最近发现一些老代码,发布出来给初学者学习,下面附上几张展示的效果,有需要的请到下面地址下载,记得stare哦 https://github.com/xian ...

  10. mahout系列----minhash聚类

    Map: Vector featureVector = features.get(); if (featureVector.size() < minVectorSize) {       ret ...