此文档是本人学习时使用的,采用一个实例作为引导进行安装测试。

  实例下载地址如下:

  https://github.com/sans-serif/scrapy-german-news#introduction

  解压之后为:scrapy-german-news-master

  修改requirements.txt 删除psycopg2==2.6.1

  其中requirements.txt内容如下:

  ********************************************************************

  attrs==15.2.0

  cffi==1.5.2

  cryptography==1.2.3

  cssselect==0.9.1

  enum34==1.1.2

  idna==2.0

  ipaddress==1.0.16

  lxml==3.5.0

  psycopg2==2.6.1

  pyasn1==0.1.9

  pyasn1-modules==0.0.8

  pycparser==2.14

  pyOpenSSL==0.15.1

  queuelib==1.4.2

  Scrapy==1.0.5

  service-identity==16.0.0

  six==1.10.0

  Twisted==15.5.0

  w3lib==1.13.0

  zope.interface==4.1.3

  ********************************************************************

  按理只需此文件即可,scrapy-german-news-master只是测试工程。


具体安装步骤如下:

第一步:

安装pip: sudo apt-get install python-pip

第二步:安装依赖

sudo apt-get install libffi-dev

sudo apt-get install python-dev

sudo apt-get install libxml2-dev

sudo apt-get install libxslt-dev

第三步:

  准备好requirements.txt文件。

  sudo pip install -r requirements.txt

第四步:安装postgresql

sudo apt-get install postgresql

sudo apt-get install python-psycopg2

sudo apt-get install libpq-dev

sudo pip install psycopg2==2.6.1

安装完成

测试运行,看是否安装成功:

  进入目录scrapy-german-news-master 运行 scrapy crawl faz

  如果能看到开始抓取数据,则认为配置成功

  


如安装过程中出现如下错误,解决方案:

(1)ImportError: No module named pkg_resources 解决方法:

  sudo apt-get install --reinstall python-pkg-resources

(2)pkg_resources.DistributionNotFound: setuptools>=11.3 解决方法:

  sudo pip install -U distribute

(3)pip install psycopg2  错误,解决如下:

  sudo apt-get install postgresql

  sudo apt-get install python-psycopg2

  sudo apt-get install libpq-dev

(4)c/_cffi_backend.c:2:20: 致命错误: Python.h:没有那个文件或目录, 解决如下:

  sudo apt-get install python-dev

(5)src/lxml/includes/etree_defs.h:14:31: 致命错误: libxml/xmlversion.h:没有那个文件或目录,解决如下:

  apt-get install libxml2-dev libxslt-dev

(6)关于这个libffi,错误,解决如下:

  sudo apt-get install libffi-dev

(7) build/temp.linux-i686-2.7/_openssl.c:431:25: fatal error: openssl/aes.h: No such file or directory, 解决如下:

  sudo apt-get install libssl-dev

备注:以上测试工程采用的是postgresql数据库,也可以采用mysql

scrapy在ubuntu上安装总结的更多相关文章

  1. [异常解决] ubuntu上安装JLink驱动遇到的坑及给后来者的建议

    一.前言 最近将整个电脑格式化,改成了linux操作系统 希望这样能让自己在一个新的世界探索技术.提升自己吧- win上的工具用多了,就不想变化了- 继上一篇<ubuntu上安装虚拟机遇到的问题 ...

  2. Ubuntu上安装Robomongo及添加到启动器

    到目前为止,Robomongo仍是MongoDB最好的客户端管理工具,如需在Ubuntu上安装Robomongo,可直接从官网下载.tar.gz压缩包进行解压,然后直接运行bin目录下的robomon ...

  3. 在 Ubuntu 上安装 Android Studio

    在 Ubuntu 上安装 Android Studio http://www.linuxidc.com/Linux/2013-05/84812.htm 打开terminal,输入以下命令 sudo a ...

  4. Ubuntu上安装Karma失败对策

    在Ubuntu上安装Karma遇到超时 timeout 错误.Google了一下,国外的码农给了一个快捷的解决方案,实测可行,贴在这里: sudo apt-get install npm nodejs ...

  5. 在Ubuntu上安装LAMP服务器

    1.安装Ubuntu上安装LAMP apt-get install lamp-server^ 2.安装过程中设置MySql密码 3.测试 创建index.php var/www/html/index. ...

  6. [译]How to Setup Sync Gateway on Ubuntu如何在ubuntu上安装sync-gateway

    参考文章https://hidekiitakura.com/2015/03/21/how-to-setup-sync-gateway-on-ubuntudigitalocean/ 在此对作者表示感谢 ...

  7. 在Ubuntu上安装JDK、Ant、Jmeter和Jenkins

    一.前期准备 1. 在win7下载VMware.Ubuntu(用迅雷下比较快) 2. 安装完VMware后新建虚拟机,选择iso: 3. 具体配置参考如下,至此Ubantu安装完成 二.在Ubuntu ...

  8. Ubuntu上安装MongoDB(译)

    add by zhj:直接从第四步开始就可以了,而且安装好MongoDB后会自动启动的,不必自己去执行启动命令 原文:https://docs.mongodb.com/manual/tutorial/ ...

  9. Ubuntu上安装ns2-2.34

    Ubuntu上安装ns2-2.34 步骤1 下载ns-allinone-2.34 $ tar zxf ns-allinone-2.34.tar.gz 步骤2 sudo apt-get install ...

随机推荐

  1. js实现文字横向滚动

    页面布局      <div id="scroll_div" class="fl">         <div id="scroll ...

  2. Scala Web 框架——Lift(一)准备工作

    [Lift]Scala Web 框架——Lift(一)准备工作 Lift 官方网站:http://liftweb.net/ 下载 http://liftweb.net/download 下载.zip压 ...

  3. asp.net mvc上传图片案例

    1.放在ajax.BeginForm里,不好使,同asp.net 表单中 fileupload控件不支持ajax差不多吧,如果异步的话可以借助jquery.form.js,很方便 2. //上传文件  ...

  4. oracle实例,数据库,服务器区别

    实例(instance) 实例是一个非固定的,基于内存的基本进程与内存结构.当服务器关闭时,实例就不存在了. 数据库(DataBase) 数据库指固定的,基于磁盘的数据文件,控制文件,日志文件,参数文 ...

  5. Windows Store 应用

    使用 Project Siena 生成一个 Windows Store 应用   继 App Studio 之后微软又一力作 Project Siena [Win8 应用神器]给初学开发 或 对 Wi ...

  6. 10.26最后的模拟DAY2 数字对[暴力]

    数字对 [题目描述] 小H是个善于思考的学生,现在她又在思考一个有关序列的问题. 她的面前浮现出一个长度为n的序列{ai},她想找出一段区间[L, R](1 <= L <= R <= ...

  7. SHELL编程笔记(二)之shell流程控制

    Shell控制流程结构 本章内容有:   退出状态   While.for和until loops循环   If then else语句   脚本中动作   菜单 条件控制语句 If then els ...

  8. 企业架构研究总结(28)——TOGAF架构开发方法(ADM)之需求管理阶段

    1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程,使企业架构的需求可以被识别.存储并与其他架构开 ...

  9. JavaScript事件的几个细节

    JavaScript事件的几个细节 一.是捕获还是冒泡 昨天被问到一个问题:事件流有几个阶段?在这几个阶段中,事件一共发生几次? 问题很简单,但对于事件一共发生几次有点乱.总觉得捕获也能触发事件.冒泡 ...

  10. struts2讲义----建立一个struts2工程

    建立一个Struts2 工程 Ø 1在MyEclipse中新建web工程 Ø 2在struts-2.2.1.1-all\struts-2.2.1.1解压struts2-blank.war( 最基础的示 ...