Python3环境安装Scrapy爬虫框架过程及常见错误
收录待用,修改转载已取得腾讯云授权
Scrapy安装介绍
Scrapy的安装有多种方式,它支持Python2.7版本及以上或Python3.3版本及以上。下面说明Python3环境下的安装过程。
Scrapy依赖的库比较多,至少需要依赖库有Twisted 14.0,lxml 3.4,pyOpenSSL 0.14。而在不同平台环境又各不相同,所以在安装之前最好确保把一些基本库安装好,尤其是Windows。
腾讯云有Windows、Linux多个版本系统,在这里分别介绍。
各平台安装简介
Anaconda
这种方法是一种比较简单的安装Scrapy的方法(尤其是对Windows来说),你可以使用该方法安装,也可以选用下文中专用平台的安装方法。
Anaconda是包含了常用的数据科学库的Python发行版本,如果没有安装,可以到https://www.continuum.io/downloads下载对应平台的包安装。
如果已经安装,那么可以轻松地通过conda
命令安装Scrapy。
安装命令如下:
conda install Scrapy
Windows
- 安装lxml
最好的安装方式是通过wheel文件来安装,http://www.lfd.uci.edu/~gohlke/pythonlibs/,从该网站找到lxml的相关文件。假如是Python3.5版本,WIndows 64位系统,那就找到lxml‑3.7.2‑cp35‑cp35m‑win_amd64.whl 这个文件并下载,然后通过pip安装。
下载之后,运行如下命令安装:
pip3 install wheel
pip3 install lxml‑3.7.2‑cp35‑cp35m‑win_amd64.whl
即可完成lxml的安装,其他文件替换文件名即可。
- 安装zope.interface
到官方网站https://pypi.python.org/pypi/zope.interface#downloads下载对应版本的wheel文件,然后pip安装。比如Python 3.5版本,Windows 64位系统,就下载zope.interface-4.3.3-cp35-cp35m-win_amd64.whl。
然后安装wheel文件即可,命令如下:
pip3 install zope.interface-4.3.3-cp35-cp35m-win_amd64.whl
其他版本替换文件名即可。
- 安装pyOpenSSL
官方网站下载wheel文件,https://pypi.python.org/pypi/pyOpenSSL#downloads,如当前最新版本名称是pyOpenSSL-16.2.0-py2.py3-none-any.whl,下载后安装即可。
pip3 install pyOpenSSL-16.2.0-py2.py3-none-any.whl
- 安装Twisted
同理,http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted下载wheel文件,利用pip安装即可。
如Python 3.5版本,Windows 64位系统,下载
Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl,然后pip安装。
pip3 install Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl
- 安装pywin32
从官方网站 https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/ 下载对应版本的安装包安装即可。
- 安装Scrapy
最后安装Scrapy即可,依然使用pip,命令如下:
pip3 install Scrapy
CentOS、RedHat、Fedora
- 依赖库安装
确保一些必须的类库已经安装,运行如下命令:
sudo yum groupinstall development tools
sudo yum install python34-devel epel-release libxslt-devel libxml2-devel openssl-devel
- 安装Scrapy
利用pip安装Scrapy即可,运行如下命令:
pip3 install Scrapy
Ubuntu、Debian、Deepin
- 依赖库安装
首先确保一些必须的类库已经安装,运行如下命令:
sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev
- 安装Scrapy
利用pip安装Scrapy即可,运行如下命令:
pip3 install Scrapy
虽然腾讯云没有Mac系统,不过在这里还是加上MacOS的安装。
Mac OS
- 依赖库安装
在Mac上构建Scrapy的依赖库需要C编译器以及开发头文件,它一般由Xcode提供,运行如下命令安装即可:
xcode-select --install
- 安装Scrapy
利用pip安装Scrapy即可,运行如下命令:
pip3 install Scrapy
验证
安装之后,在命令行下输入scrapy
,如果出现类似下方的结果,就证明Scrapy安装成功。
常见错误
- pkg_resources.VersionConflict: (six 1.5.2 (/usr/lib/python3/dist-packages), Requirement.parse('six>=1.6.0'))
six包版本过低,six包是一个提供兼容Python2和Python3的库,升级six包即可。
sudo pip3 install -U six
- c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
缺少Libffi这个库。什么是libffi?“FFI” 的全名是 Foreign Function Interface,通常指的是允许以一种语言编写的代码调用另一种语言的代码。而Libffi库只提供了最底层的、与架构相关的、完整的”FFI”。
安装相应的库即可。
Ubuntu、Debian:
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
CentOS、RedHat:
sudo yum install gcc libffi-devel python-devel openssl-devel
- ImportError: No module named 'cryptography'
这是缺少加密的相关组件,利用pip安装即可。
sudo pip3 install cryptography
- ImportError: No module named 'packaging'
缺少packaging这个包,它提供了Python包的核心功能,利用pip安装即可。
sudo pip3 install packaging
- ImportError: No module named 'appdirs'
缺少appdirs这个包,它用来确定文件目录,利用pip单独安装即可。
sudo pip3 install appdirs
原文链接:https://www.qcloud.com/community/article/556466001489422697
Python3环境安装Scrapy爬虫框架过程及常见错误的更多相关文章
- Python3环境安装PySpider爬虫框架过程
收录待用,修改转载已取得腾讯云授权 大家好,本篇文章为大家讲解腾讯云主机上PySpider爬虫框架的安装. 首先,在此附上项目的地址,以及官方文档 PySpider 官方文档 安装流程 pip 首先确 ...
- python3.7.1安装Scrapy爬虫框架
python3.7.1安装Scrapy爬虫框架 环境:win7(64位), Python3.7.1(64位) 一.安装pyhthon 详见Python环境搭建:http://www.runoob.co ...
- 安装scrapy 爬虫框架
安装scrapy 爬虫框架 个人根据学习需要,在Windows搭建scrapy爬虫框架,搭建过程种遇到个别问题,共享出来作为记录. 1.安装python 2.7 1.1下载 下载地址 1.2配置环境变 ...
- win7中python3.4下安装scrapy爬虫框架(亲测可用)
貌似最新的scrapy已经支持python3,但是错误挺多的,以下为在win7中的安装步骤: 1.首先需要安装Scrapy的依赖包,包括parsel, w3lib, cryptography, pyO ...
- win环境安装python爬虫框架scrapy
#官网下载python for windows #https://www.python.org/downloads/ #安装后在“计算机->属性->高级系统设置->环境变量-> ...
- windows7 64位下环境搭建scrapy爬虫框架
适用于python 2.7 64位安装 一.操作系统:WIN7 64位 二.python版本:2.7 64位(scrapy目前不支持3.x) 不确定位数的,看图
- Windows上Python3.5安装Scrapy(lxml) 以及与twisted有关错误的解决
转载于:http://www.cnblogs.com/silverbullet11/p/4966608.html 常用网址: Python 3.5: https://www.python.org/do ...
- window7系统下安装scrapy爬虫框架
本文是在python3.6环境下安装的下面软件,如果大家和我的python版本不一致,请在页面选择符合自己版本的软件下载. 1.wheel pip install wheel 2.lxml 下载lxm ...
- Ubuntu 12.04 安装Scrapy爬虫框架
转自:http://www.cnblogs.com/HelloPython/ 亲测有效 根据Scrapy安装指南(http://doc.scrapy.org/en/latest/intro/insta ...
随机推荐
- android ARM 汇编学习—— 在 android 设备上编译c/cpp代码并用objdump/readelf等工具分析
学习 android 逆向分析过程中,需要学习 Arm 指令,不可避免要编写一些 test code 并分析其指令,这是这篇文档的背景. 在目前 android 提供的开发环境里,如果要编写 c / ...
- linux中的阻塞机制及等待队列【转】
转自:http://www.cnblogs.com/gdk-0078/p/5172941.html 阻塞与非阻塞是设备访问的两种方式.驱动程序需要提供阻塞(等待队列,中断)和非阻塞方式(轮询,异步通知 ...
- CompareUtil
java package com.daojia.beauty.open.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; ...
- 网站js埋点
js埋点 1.埋点作用: 页面埋点的作用:其实就是用于流量分析.而流量的意思,包含了很多:页面浏览数(PV).独立访问者数量(UV).IP.页面停留时间.页面操作时间.页面访问次数.按钮点击次数.文 ...
- selenium 3.0鼠标事件 (java代码)
注意:ActionChains下相关方法在当前的firefox不工作,建议使用谷歌浏览器. public static void main(String[] args) throws Interrup ...
- 使用bottle进行web开发(8):get的参数传递,form里的额数据传递等
1.诸如:forum?id=1&page=5这样的,在bottle里,可以通过request.query来访问这些值,举例如下: from bottle import Bottle,run,r ...
- hdu 5190(水题)
Go to movies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
- 【原创】Maven cobertura整合多个子项目下的单测覆盖率报告
今天在调试一个UT job的时候发现找不到cobertural报告文件,后来发现在Maven的自项目里找到了对应的代码覆盖率报告,但都是是分散在每个子项目下面的,看起来很不方便.就在想是不是可以把这些 ...
- Nodejs微信开发
因为使用了Bot Framework开发了一个小功能,它目前支持了Skype\Teams\Slack等,但在国内来讲,微信还是一个比较流行的软件,所以需要接上微信 原来开发Bot的时候使用的是.Net ...
- django实现动态菜单的方式
1.model from django.contrib.auth.models import User #django自带 class UserProfile(models.Model): " ...