51Testing软件测试论坛

标题: 记一次Linux下安装pyspider的过程 [打印本页]

作者: 测试积点老人    时间: 2018-12-3 16:15
标题: 记一次Linux下安装pyspider的过程
首先执行
  1. pip install pyspider
复制代码
此时系统提示
  1. <span style="font-size:16px;">Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-Lau0Qp/pycurl/
  2. You are using pip version 9.0.1, however version 9.0.3 is available.
  3. You should consider upgrading via the 'pip install --upgrade pip' command.
  4. </span>
复制代码
这是我pip版本的问题,执行
  1. <span style="font-size:16px;">sudo python -m pip install --upgrade pip</span>
复制代码
升级pip

继续执行

  1. <span style="font-size:16px;"> sudo pip install pyspider</span>
复制代码

来安装pyspider,此时报错:

  1. Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-szUHrj/pycurl/
复制代码

原因是pyspider的依赖库未安装,需要执行

  1. <span style="font-size:16px;">sudo apt-get install python python-dev python-distribute python-pip libcurl4-
复制代码

命令来安装以下支持类库

本来兴冲冲的以为可以正常安装pyspider了,可继续执行 sudo pip install pyspider时系统报错信息为:

  1. compilation terminated.
  2.     error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
  3.    
  4.     ----------------------------------------
  5. <span style="color:#ff0000;">Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-bu
复制代码

原因是因为安装工具包时需要抓取网页因而要处理 https,而处理 https 又依赖加解密算法(即 cryptography 包),而 cryptography 又依赖傅立叶变换的算法以及相应的编译环境。Ubuntu 16.04 默认没有安装 libffi-dev 和 libssl-dev,gcc 也不一定安装,而目标安装包又没有将相关软件包记到依赖列表里,因此需要先手动安装:

  1. sudo apt-get install libssl-dev libffi-dev build-essential
复制代码

此时再执行 sudo pip install pyspider 就OK了!

因此Linux下安装要执行以下几个命令,(划重点!)

  1. <div class="blockcode"><blockquote>sudo python -m pip install --upgrade pip
复制代码
  1. sudo apt-get install python python-dev python-distribute python-pip libcurl4-openssl-dev libxml2-dev libxslt1-dev python-lxml
复制代码
  1. sudo apt-get install libssl-dev libffi-dev build-essential
复制代码
  1. sudo pip install pyspider
复制代码







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2