转载:https://blog.csdn.net/gulang03/article/details/82564402
转载:https://blog.csdn.net/sinat_35511526/article/details/94389342
转载:https://blog.csdn.net/lanix516/article/details/83268249
Scrapy 是一个优秀的 Python 框架,相信很多初学者在安装 Scrapy 的时候会遇到一些坑(这些坑主要体现在 Windows 下的 twisted 安装),本文就此做些记录。
注意:这里要注意的是,因为我们之后的安装都需要用到 控制台(cmd) 操作,但是默认情况下你安装的 python3 是在C盘,这里打开控制台就必须以管理员模式打开 cmd。普通模式安装的时候很大可能会因权限不足失败。(Linux 下的话在命令前面加上 sudo 即可)
开始前先升级一下:pip
pip install pip --upgrade
开始安装
安装资料当然最好最权威是官网资料啦:
https://docs.scrapy.org/en/latest/intro/install.
但是直接在 控制台(管理员模式下的 cmd.exe) 执行是会失败的,因为往下看会发现 scrapy 需要这些依赖库:
(如果下载安装速度过慢,可以使用国内源命令如下:
pip install wheel -i http://mirrors.aliyun.com/pypi/simple/ (这里使用的是阿里云镜像)
pip国内的一些镜像
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
)
所以我们要执行以下命令来安装依赖:
pip install lxml
pip install w3lib
pip install parsel
pip install cryptography
pip install pyOpenSSL
pip install twisted # 该选项需要 Microsoft Visual C++ 14.0(当时是在 Windows 下的要求)
最后一条命令在执行的时候通常会因为你的电脑上没有安装 Microsoft Visual C++ 14.0,造成编译安装失败,解决方法呢,可以自行百度安装 Microsoft Visual C++ 14.0,但是这个不好找,微软官网我也看了一下,只有几个 GB 的全家桶。所以最后我选择了更简单的办法
(ps:安装这个好像必然失败,所以建议直接到后面的地址下载),到这里:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
ps:安装时可能发生错误(在windows 10种使用pip安装greenlet时,遇到下面这样一个错误,通过搜索发现有很多类似的情况发生在安装scrapy/twisted等库的时候,看起来时需要一个c++编译器。安装vstudio实在太大了,网上也给出了不少解决方案,但是下面这个是简单的,直接pip安装二进制版
pip install --only-binary :all: greenlet
)
PS1:这也是与 Linux 下唯一的差别,Linux 直接执行上面的 几条命令就可以完成
PS2:之所以这样解决可以成功是因为,python 是可以基于 C/C++ 编写扩展库的,但是你编写了,就需要按要求使用指定的C/C++编译器,才能编译安装,下面使用的是已经编译好的 *.whl, 跳过了编译步骤,所以就不用安装 Microsoft Visual C++ 14.0
安装下载下来的编译过的: Twisted-18.7.0-cp36-cp36m-win_amd64.whl
此时相关依赖已经全部安装完毕,这个时候你就可以从容潇洒的执行:
pip install scrapy
最后不出意外的话你就会看到:
此时你已经成功安装 scrapy。