Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有Twisted 14.0、lxml 3.4和pyOpenSSL 0.14。在不同的平台环境下,它所依赖的库也各不相同,所以在安装之前,最好确保把一些基本库安装好。本节就来介绍Scrapy在不同平台的安装方法。

1. 相关链接

官方网站:https://scrapy.org

官方文档:https://docs.scrapy.org

PyPI:https://pypi.python.org/pypi/Scrapy

GitHub:https://github.com/scrapy/scrapy

中文文档:http://scrapy-chs.readthedocs.io

2. Anaconda安装

这是一种比较简单的安装Scrapy的方法(尤其是对于Windows来说),如果你的Python是使用Anaconda安装的,或者还没有安装Python的话,可以使用此方法安装,这种方法简单、省力。当然,如果你的Python不是通过Anaconda安装的,可以继续看后面的内容。

关于Anaconda的安装方式,可以查看1.1节,在此不再赘述。

如果已经安装好了Anaconda,那么可以通过conda命令安装Scrapy,具体如下:conda install Scrapy

3. Windows下的安装

如果你的Python不是使用Anaconda安装的,可以参考如下方式来一步步安装Scrapy。

安装lxml

lxml的安装过程请参见1.3.1节,在此不再赘述,此库非常重要,请一定要安装成功。

安装pyOpenSSL

在官方网站下载wheel文件(详见https://pypi.python.org/pypi/pyOpenSSL#downloads)即可,如图1-76所示。

图1-76 下载页面

下载后利用pip安装即可:pip3 install pyOpenSSL-17.2.0-py2.py3-none-any.whl

安装Twisted

到http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted下载wheel文件,利用pip安装即可。

比如,对于Python 3.6版本、Windows 64位系统,则当前最新版本为Twisted‑17.5.0‑cp36‑cp36m‑win_amd64.whl,直接下载即可,如图1-77所示。

图1-77 下载页面

然后通过pip安装:pip3 install Twisted‑17.5.0‑cp36‑cp36m‑win_amd64.whl

安装PyWin32

从官方网站下载对应版本的安装包即可,链接为:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/,如图1-78所示。

图1-78 下载列表

比如对于Python 3.6版本,可以选择下载pywin32-221.win-amd64-py3.6.exe,下载完毕之后双击安装即可。

注意,这里使用的是Build 221版本,随着时间推移,版本肯定会继续更新,最新的版本可以查看https://sourceforge.net/projects/pywin32/files/pywin32/,到时查找最新的版本安装即可。

安装Scrapy

安装好了以上的依赖库后,安装Scrapy就非常简单了,这里依然使用pip,命令如下:pip3 install Scrapy

等待命令结束,如果没有报错,就证明Scrapy已经安装好了。

4. Linux下的安装

在Linux下的安装方式依然分为两类平台来介绍。

CentOS和Red Hat

在CentOS和Red Hat下,首先确保一些依赖库已经安装,运行如下命令:sudo yum groupinstall -y development tools

sudo yum install -y epel-release libxslt-devel libxml2-devel openssl-devel

最后利用pip安装Scrapy即可:pip3 install Scrapy

Ubuntu、Debian和Deepin

在Ubuntu、Debian和Deepin平台下,首先确保一些依赖库已经安装,运行如下命令:sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev

zlib1g-dev

然后利用pip安装Scrapy即可:pip3 install Scrapy

运行完毕后,就完成Scrapy的安装了。

5. Mac下的安装

在Mac下,首先也是进行依赖库的安装。

在Mac上构建Scrapy的依赖库需要C编译器以及开发头文件,它一般由Xcode提供,具体命令如下:xcode-select --install

随后利用pip安装Scrapy即可:pip3 install Scrapy

6. 验证安装

安装之后,在命令行下输入scrapy,如果出现类似如图1-79所示的结果,就证明Scrapy安装成功了。

图1-79 验证安装

7. 常见错误

在安装过程中,常见的错误汇总如下。

pkg_resources.VersionConflict: (six 1.5.2 (/usr/lib/python3/dist-packages), Requirement.parse('six>=1.6.0'))

这是six包版本过低出现的错误。six包是一个提供兼容Python 2和Python 3的库,这时升级six包即可:sudo pip3 install -U six

c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory

这是在Linux下常出现的错误,缺少libffi库造成的。什么是libffi?FFI的全名是Foreign Function Interface,通常指的是允许以一种语言编写的代码调用另一种语言的代码。而libffi库只提供了最底层的、与架构相关的、完整的FFI。此时安装相应的库即可。

在Ubuntu和Debian下,直接执行如下命令即可:sudo apt-get install build-essential libssl-dev libffi-dev python3-dev

在CentOS和Red Hat下,直接执行如下命令即可:sudo yum install gcc libffi-devel python-devel openssl-devel

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build/cryptography/

这是缺少加密的相关组件,此时利用pip安装即可:pip3 install cryptography

ImportError: No module named 'packaging'

这是因为缺少packaging包出现的错误,这个包提供了Python包的核心功能,此时利用pip安装即可。

ImportError: No module named '_cffi_backend'

这个错误表示缺少cffi包,直接使用pip安装即可:pip3 install cffi

ImportError: No module named 'pyparsing'

这个错误表示缺少pyparsing包,直接使用pip安装即可:pip3 install pyparsing appdirs

云海天教程网,免费的在线学习python平台,欢迎关注!

本文转自:https://cuiqingcai.com/5421.html

linux安装python库报错pywin32_Python3爬虫利器:Scrapy的安装相关推荐

  1. 安装python37路径报错_解决pycharm安装python库报错问题

    最近在玩微信图灵机器人,不过我安装有一些库,安装报错,上网找了很久,总结有两种方法,记录一下 方法一: 手动安装,直接到官网你需要的python库下载到本地, 放在安装python路径,C:\User ...

  2. linux安装python库报错pywin32_完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误...

    报错信息 最近闲来无事,用python的tkinter库开发了一款带日程提醒的万年历桌面程序.在程序开发结束开始打包时,却发现一直报错 PyInstaller cannot check for ass ...

  3. linux安装python库报错pywin32,Linux windows安装paramiko模块

    1.首先我们刚刚说的pip是什么? 在pip的python官网上我们可以看到,pip 是"A tool for installing and managing Python packages ...

  4. linux安装python库报错pywin32_安装Python+Pywin32(version 3.3)

    [转]linux内核中writesb(), writesw(), writesl() 宏函数 writesb(), writesw(), writesl() 宏函数 功能 : writesb()    ...

  5. Linux笔记(2)——导入python库报错“libgomp.so.1: version `GOMP_4.0‘ not found“

    导入python库报错"libgomp.so.1: version `GOMP_4.0' not found" 问题描述 超算跑一个pytorch,出现如下错误 from torc ...

  6. pip安装第三方库报错Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None))

    pip安装第三方库报错Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) pip安装第三方库时 ...

  7. linux使用python wxpy报错_CentOS 7.2 安装 python3 + wxpy

    本文主要阐述如何在centos7.2上搭建Python3的开发环境,目的是为了在Linux环境运行基于wxpy的Python程序. 一.安装Python3 CentOS7.2 自带有 python,但 ...

  8. 基于pip的安装lxml库报错解决方案

    pip是python中经常使用可以便捷安装python其他库的一款软件,我们经常在命令行cmd中使用它. 安装lxml库的时候容易出现没法从网上安装twisted库的错误,解决方案是从将twisted ...

  9. Vue中安装pubsub-js库报错相关事宜

    目录 背景 哪里查看版本? 如何安装 背景 使用命令行npm i pubsub-js 安装pubsub-js时候报错. 因为安装pubsub-js的订阅和发布消息功能,目前仅支持1.6.0版本 所以安 ...

最新文章

  1. html 标签、图像、链接、注释、锚点定位、特殊字符
  2. 计算机算法设计与分析二--分治
  3. POJ 3687 Labeling Balls(拓扑序列)
  4. A multi-faceted language for the Java platform
  5. PHP红黑源码,红黑树的实现源码(第二次修订版)
  6. 大数据学习笔记:距离度量和相似度度量
  7. 作为程序员,起码要知道的 Python 修饰器!
  8. Redis应用场景一
  9. php的敏感词过滤类库,敏感词过滤的php类库
  10. 02:Glove论文学习
  11. session 与 coolie 的区别与联系
  12. 破解虚拟机ESXi服务器密码,esxi虚机Windows server 2012忘记密码解决办法
  13. ANSYS ICEM CFD三维非结构网络生成实例——教室全新风送风与排风
  14. 前端开发技术——对象
  15. 4.外部协作单位的组织与管理
  16. Excel分类统计数量
  17. C语言中求指定位数的水仙花数
  18. 微信小程序——原生小程序即时通信IM demo,包含聊天、表情、语音、图片、会话列表功能
  19. node-red温湿度传感器节点
  20. 康佳KKTV K32刷机

热门文章

  1. 13.相机和图像——缩放和移动是不一样的,移动变焦镜头,镜头并不完美,镜像系统_5
  2. 计算机二级换c语言,09年计算机二级C语言辅导:C技巧(内存分配:更换策略,不要为难内存)...
  3. sdoi2017 r1 不堪回首
  4. 【Python】【Python语言】Python3.7.2的关键字与保留字
  5. python跳出循环重新开始_python怎么跳出循环
  6. 不安全的反序列化_CVE202027131 思科安全管理器反序列化漏洞 POC
  7. c语言中const的作用面试,C语言const关键字作用
  8. centos 安装idea 非可视化_CENTOS 7 安装教程
  9. 音频特效:Flanger 和 Chorus
  10. Keras-10 模型可视化