爬虫入门到精通_框架篇15(Scrapy框架安装)

1 Scrapy安装

Scrapy的安装有多种方式,它支持Python2.7版本及以上或Python3.3版本及以上。下面说明Python3环境下的安装。
Scrapy依赖的库比较多,至少需要依赖库有Twisted14.0,lxml 3.4,pyOpenSSL 0.14。而在不同平台环境又各不相同,所以在安装之前最好确保把一些基本库安装好,尤其是Windows。

2 Anaconda

安装命令如下:

conda install Scrapy

3 Windows

安装lxml

最后通过wheel安装。
查找:https://www.lfd.uci.edu/~gohlke/pythonlibs/
在这里插入图片描述
安装命令:

pip3 install wheel
pip3 install lxml‑3.7.2‑cp35‑cp35m‑win_amd64.whl

在这里插入图片描述

安装pyOpenSSL

下载网页:https://pypi.python.org/pypi/pyOpenSSL#downloads
安装命令:

pip3 install pyOpenSSL-16.2.0-py2.py3-none-any.whl

在这里插入图片描述

安装Twisted

安装命令:

pip3 install Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl

在这里插入图片描述

安装pywin32

从官方网站https://github.com/mhammond/pywin32/releases/下载对应版本
在这里插入图片描述

安装Scrapy

pip3 install Scrapy

验证安装成功:
在这里插入图片描述

4 CentOS̵ RedHat̵ Fedora

依赖库安装

确保一些必须的类库已经安装,运行如下命令:

sudo yum groupinstall development tools
sudo yum install python34-devel epel-release libxslt-devel libxml2-devel openssl-devel

安装Scrapy

pip3 install Scrapy

5 Ubuntu̵ Debian̵ Deepin

依赖库安装

确保一些必须的类库已经安装,运行如下命令:

sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2
libxml2-dev libxslt1-dev zlib1g-dev

安装Scrapy

pip3 install Scrapy

6 Mac OS

依赖库安装

在Mac上构建Scrapy的依赖库需要C编译器以及开头头文件,它一般由Xcode提供,运行如下命令:

xcode-select --install

安装Scrapy

pip3 install Scrapy

7 常见错误

  • 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/518832.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Flutter 面试题】dart是值传递还是引用传递?

【Flutter 面试题】dart是值传递还是引用传递? 文章目录 写在前面解答补充说明值传递示例引用传递示例总结 写在前面 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主,51CTO专家博主…

视频编码中常用的测试YUV系列及说明

vcc最新规定的测试序列如下所示,对于RA和LD配置,所有序列的所有帧都需要测试,对于intra配置仅需测试前8帧。 每列含义如下: A1、A2测试序列在LD配置下编码时应编码帧数为帧率的三倍。 “M”表示在该配置下必须测试这条序列。 …

算法沉淀——动态规划之其它背包问题与卡特兰数(leetcode真题剖析)

算法沉淀——动态规划之其它背包问题与卡特兰数 二维费用的背包问题01.一和零02.盈利计划 似包非包组合总和 Ⅳ 卡特兰数不同的二叉搜索树 二维费用的背包问题 01.一和零 题目链接:https://leetcode.cn/problems/ones-and-zeroes/ 给你一个二进制字符串数组 strs…

登录校验-过滤器-拦截器

会话技术 会话:用户打开浏览器,访问Wb服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应。 会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求…

【MySQL知识体系】第2章 数据库与表的创建(一)

第2章 数据库与表的创建 2.1 数据库操作 2.2 表操作 文章目录 第2章 数据库与表的创建2.1 数据库操作2.1.1 创建第一个数据库2.1.2 更新数据库名称(数据库创建后无法修改名称)2.1.3 删除数据库2.1.4 取个合适的数据库名称 第2章 数据库与表的创建 2.1 数…

抖音商家短视频直播流量变现运营SOP地图

【干货资料持续更新,以防走丢】 抖音商家短视频直播流量变现运营SOP地图 部分资料预览 资料部分是网络整理,仅供学习参考。 抖音运营资料合集(完整资料包含以下内容) 目录 【提升短视频运营效率的专业指南】 高效运营&#xf…

浅谈Linux进程隐藏

浅谈Linux进程隐藏 文章目录 浅谈Linux进程隐藏前言环境变量的绕过常用的命令在哪里环境变量的调用前置知识的了解Netstat伪装怎么去甄别 LD_PRELOAD简单实例check.c重载函数设置LD_PERLOAD删除环境变量LD_PERLOAD PS的隐藏readdir函数如何HOOK编译并验证 LD_PRELOAD的其他利用…

运算符重载(Operator Overloading)

定义 在C中,运算符重载(Operator Overloading)是一种允许程序员为自定义数据类型重新定义或重载已有的运算符的功能。通过运算符重载,我们可以使得自定义类型的对象能够像内置类型(如int、float等)一样使用…

基于yolov5的柿子成熟度检测系统,可进行图像目标检测,也可进行视屏和摄像检测(pytorch框架)【python源码+UI界面+功能源码详解】

功能演示: 基于yolov5的柿子成熟度检测系统,系统既能够实现图像检测,也可以进行视屏和摄像实时检测_哔哩哔哩_bilibili (一)简介 基于yolov5的柿子成熟度检测系统是在pytorch框架下实现的,这是一个完整的…

AES加密学习

AES(高级加密标准)是一种对称密钥加密算法,用于加密和解密数据。它被广泛应用于各种安全领域,包括但不限于网络通信、数据存储和软件保护。 历史背景 AES是由比利时密码学家Joan Daemen和Vincent Rijmen设计的Rijndael算法演变而…

MySQL实战45讲——30答疑文章(二):用动态的观点看加锁

目录 不等号条件里的等值查询 等值查询的过程 怎么看死锁? 怎么看锁等待? update 的例子 小结 上期问题时间 提示 文章摘自林晓斌老师《MySQL实战45讲》,作为笔记而用,故有加一些自己的理解。在第[20]和[21]篇文章中&…

加油!你也可以成为学生口中的“好老师”

在教育的道路上,每一位教师都承载着塑造未来的重要使命。而成为学生口中的“好老师”,无疑是每位教育工作者的追求和荣耀。那么,如何才能成为这样的“好老师”呢? 一、热爱教育,关爱学生 成为“好老师”的首要条件是对…