Python3安装Scrapy的方法步骤


Posted in Python onNovember 23, 2017

本文介绍了Python3安装Scrapy的方法步骤,分享给大家,具体如下:

  1. 运行平台:Windows
  2. Python版本:Python3.x
  3. IDE:Sublime text3

一、Scrapy简介

Scrapy是一个为了爬取网站数据提取结构性数据而编写的应用框架,可以应用于数据挖掘,信息处理或存储历史数据等一些列的程序中。Scrapy最初就是为了网络爬取而设计的。现在,Scrapy已经推出了曾承诺过的Python3.x版本。

为什么学习Scrapy呢?它能我们更好的完成爬虫任务,自己写Python爬虫程序好比孤军奋战,而使用了Scrapy就好比手底下有了千军万马。Scrapy可以起到事半功倍(甚至好几倍*.*)的效果。所以,学习Scrapy也就显得很有必要了。

二、Scrapy安装

1.直接使用指令pip3 install scrapy,发现有诸多错误。

  1. Failed building wheel for lxml
  2. Microsoft Visual C++ 10.0 is required
  3. Failed building twisted
  4. Unable to find vcvarsall.bat

遇到的错误,如下图所示:

Python3安装Scrapy的方法步骤

Python3安装Scrapy的方法步骤

Python3安装Scrapy的方法步骤

2.解决办法

在http://www.lfd.uci.edu/~gohlke/pythonlibs/有很多用于windows的编译好的Python第三方库,我们下载好对应自己Python版本的库即可。

(1)在cmd中输入指令python,查看python的版本,如下:

Python3安装Scrapy的方法步骤

从上图可以看出可以看出我的Python版本为Python3.5.2-64bit。

(2)登陆http://www.lfd.uci.edu/~gohlke/pythonlibs/,Ctrl+F搜索Lxml、Twisted、Scrapy,下载对应的版本,例如:lxml-3.7.3-cp35-cp35m-win_adm64.whl,表示lxml的版本为3.7.3,对应的python版本为3.5-64bit。我下载的版本如下图所示:

Python3安装Scrapy的方法步骤

Python3安装Scrapy的方法步骤

Python3安装Scrapy的方法步骤

(3)在cmd中输入DOS指令,进入下载好的whl文件夹下,例如我的三个whl文件放在了Scrapy文件夹下:

Python3安装Scrapy的方法步骤

(4)依次执行如下命令:

a.pip3 install wheel

Python3安装Scrapy的方法步骤

b.pip3 install lxml-3.7.3-cp35-cp35m-win_amd64.whl

Python3安装Scrapy的方法步骤

c.pip3 install Twisted-17.1.0-cp35-cp35m-win_amd64.whl

Python3安装Scrapy的方法步骤

d.pip3 install Scrapy-1.3.2-py2.py3-none-any.whl

Python3安装Scrapy的方法步骤

这样Scrapy的安装就完成了,请忽略最后两行让我升级pip的信息。*.*

(5)Srapy已经安装成功,还要下载pywin32,找到对应版本下载,一路下一步安装即可。安装完成后,就可以正常使用Scrapy了。

URL:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/

Python3安装Scrapy的方法步骤

至此,大功告成,我们可以愉快的使用Scrapy了。

常见错误

1、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

2、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

3、ImportError: No module named 'cryptography'

这是缺少加密的相关组件,利用pip安装即可。

sudo pip3 install cryptography

4、ImportError: No module named 'packaging'

缺少packaging这个包,它提供了Python包的核心功能,利用pip安装即可。

sudo pip3 install packaging

5、ImportError: No module named 'appdirs'

缺少appdirs这个包,它用来确定文件目录,利用pip单独安装即可。

sudo pip3 install appdirs

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python海龟绘图实例教程
Jul 24 Python
一个超级简单的python web程序
Sep 11 Python
在Docker上部署Python的Flask框架的教程
Apr 08 Python
Python验证文件是否可读写代码分享
Dec 11 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
Dec 15 Python
解决Spyder中图片显示太小的问题
Apr 27 Python
python+opencv实现高斯平滑滤波
Jul 21 Python
python基于C/S模式实现聊天室功能
Jan 09 Python
python实现的读取网页并分词功能示例
Oct 29 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
在python中使用pyspark读写Hive数据操作
Jun 06 Python
如何基于Django实现上下文章跳转
Sep 16 Python
Python 和 JS 有哪些相同之处
Nov 23 #Python
深入理解Python分布式爬虫原理
Nov 23 #Python
Python实现希尔排序算法的原理与用法实例分析
Nov 23 #Python
Python 用Redis简单实现分布式爬虫的方法
Nov 23 #Python
Python3 伪装浏览器的方法示例
Nov 23 #Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 #Python
python数字图像处理之高级滤波代码详解
Nov 23 #Python
You might like
php dirname(__FILE__) 获取当前文件的绝对路径
2011/06/28 PHP
PHPExcel读取Excel文件的实现代码
2011/12/06 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
2014/03/12 PHP
php统计时间和内存使用情况示例分享
2014/03/13 PHP
php猴子选大王问题解决方法
2015/05/12 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
如何在PHP中生成随机数
2020/06/04 PHP
JavaScript 操作table,可以新增行和列并且隔一行换背景色代码分享
2013/07/05 Javascript
JS实现自动定时切换的简洁网页选项卡效果
2015/10/13 Javascript
值得分享的轻量级Bootstrap Table表格插件
2016/05/30 Javascript
详解layui弹窗父子窗口之间传参数的方法
2018/01/16 Javascript
vue初尝试--项目结构(推荐)
2018/01/30 Javascript
详解Puppeteer 入门教程
2018/05/09 Javascript
详解基于Node.js的HTTP/2 Server实践
2018/05/31 Javascript
浅谈Node.js 中间件模式
2018/06/12 Javascript
vue-cli项目配置多环境的详细操作过程
2018/10/30 Javascript
javascript实现简易聊天室
2019/07/12 Javascript
小程序实现tab标签页
2020/11/16 Javascript
[00:52]玛尔斯技能全介绍
2019/03/06 DOTA
Python常用的日期时间处理方法示例
2015/02/08 Python
python实现基于SVM手写数字识别功能
2020/05/27 Python
python requests.post带head和body的实例
2019/01/02 Python
python scp 批量同步文件的实现方法
2019/01/03 Python
python实现电子产品商店
2019/02/26 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
台湾旅游网站:灿星旅游
2018/10/11 全球购物
说一下mysql, oracle等常见数据库的分页实现方案
2012/09/29 面试题
质检部部长职责
2013/12/16 职场文书
道德模范先进事迹
2014/02/14 职场文书
倡议书范文大全
2015/04/28 职场文书
2015年学校党建工作总结
2015/05/19 职场文书
vue3中的组件间通信
2021/03/31 Vue.js
golang 实现时间戳和时间的转化
2021/05/07 Golang