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与js)两种实现
Feb 21 Python
python 切片和range()用法说明
Mar 24 Python
详解Python的Django框架中的templates设置
May 11 Python
使用Python的Twisted框架构建非阻塞下载程序的实例教程
May 25 Python
Python实现对字符串的加密解密方法示例
Apr 29 Python
Python实现时钟显示效果思路详解
Apr 11 Python
python的scipy实现插值的示例代码
Nov 12 Python
Python字符串的修改方法实例
Dec 19 Python
解决python -m pip install --upgrade pip 升级不成功问题
Mar 05 Python
Python通过递归函数输出嵌套列表元素
Oct 15 Python
python绘制雷达图实例讲解
Jan 03 Python
Python使用PyYAML库读写yaml文件的方法
Apr 06 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安全配置方法
2007/06/16 PHP
PHP中文件上传的一个问题
2010/09/04 PHP
php使用正则表达式获取字符串中的URL
2016/12/29 PHP
Js 订制自己的AlertBox(信息提示框)
2009/01/09 Javascript
Array.prototype 的泛型应用分析
2010/04/30 Javascript
精选的10款用于构建良好易用性网站的jQuery插件
2011/01/23 Javascript
如何用jquery控制表格奇偶行及活动行颜色
2014/04/20 Javascript
javascript中关于&& 和 || 表达式的小技巧分享
2015/04/10 Javascript
JavaScript学习笔记(三):JavaScript也有入口Main函数
2015/09/12 Javascript
jquery插件ajaxupload实现文件上传操作
2015/12/09 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
Node.js刷新session过期时间的实现方法推荐
2016/05/18 Javascript
基于javascript实现数字英文验证码
2017/01/25 Javascript
详解基于webpack和vue.js搭建开发环境
2017/04/05 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
vue中路由验证和相应拦截的使用详解
2017/12/13 Javascript
JavaScript的级联函数用法简单示例【链式调用】
2019/03/26 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
webpack是如何实现模块化加载的方法
2019/11/06 Javascript
vue 更改连接后台的api示例
2019/11/11 Javascript
区分vue-router的hash和history模式
2020/10/03 Javascript
[03:06]V社市场总监Dota2项目负责人Erik专访:希望更多中国玩家加入DOTA2
2014/07/11 DOTA
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
Python实现蒙特卡洛算法小实验过程详解
2019/07/12 Python
Python计算两个矩形重合面积代码实例
2019/09/16 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
2012/12/09 HTML / CSS
Quiksilver美国官网:始于1969年的优质冲浪服和滑雪板外套
2020/04/20 全球购物
建筑工程技术应届生求职信
2013/11/17 职场文书
国家助学金获奖感言
2014/01/31 职场文书
四年大学生活的自我评价范文
2014/02/07 职场文书
原材料检验岗位职责
2014/03/15 职场文书
《天游峰的扫路人》教学反思
2014/04/25 职场文书
教师演讲稿大全
2014/05/16 职场文书
公司承诺书怎么写
2014/05/24 职场文书
个人自荐书范文
2015/03/09 职场文书