严重声明:在安装Scrapy框架的时候,千万不能直接pipenv install scrapy3安装,这样肯定会失败,而且错误乱七八糟,主要原因是Twisted依赖包无法在线安装成功,pypiwin32默认不会安装,所以必须一步一步的来!
本萌在win10+Python3.7环境下使用pip命令安装scrapy时报错安装失败,遍寻解决方式最后终于成功,贴出我的解决方式供大家参考吧~~
具体步骤:(命令都是在cmd输入的,后面就不再说明了)
1.创建虚拟环境 pipenv install (确保pipenv最新版)
python3.7的安装会自动安装pip,没有pipenv的可以通过python的pip安装
2.安装pypiwin32
输入命令:pip install pypiwin32
关于pypiwin32,官网的介绍是:Python extensions for Microsoft Windows Provides access to much of the Win32 API, the ability to create and use COM objects, and the Pythonwin environment.(Microsoft Windows的Python扩展提供对大部分Win32 API的访问,创建和使用COM对象的能力以及Pythonwin环境。),所以不论电脑是32位还是64位都可以选择安装。
3.安装Twisted(这里是所以安装中最难的,也是最容易犯错的,如何直接pip install scrapy 这里肯定失败)
Twisted是用Python实现的基于事件驱动的网络引擎框架。
①离线安装方式(建议离线安装,本人也是离线安装成功的)
下载twisted对应版本的whl文件(如我的下载的是:Twisted‑18.9.0‑cp37‑cp37m‑win_amd64.whl ),cp后面是python版本,win32代表32位系统,win_amd64代表64位,文件位置放在当前cmd目录下,输入命令:pip install Twisted-18.7.0-cp36-cp36m-win_amd64.whl
whl文件下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
②在线安装方式(不推荐,反正我是失败了,还很麻烦)
直接输入命令:pip install Twisted
我当时使用的是这种方式,但是安装失败报错,缺少生成工具,需要安装Microsoft Visual C++ Build Tools。
我先是下载了一个vc++2017(下载地址:https://aka.ms/BuildTools),但是安装仍然报错,我认为是vc版本不兼容的问题,所以又下载几个vc++2015的相关工具(下载地址:https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=48145),神奇的是还是错,我这暴脾气= _ =不能惯着它,然后就放弃了这种方法(其实我还是不明白为什么会报错,如果有大神知道可以在下面留言给我解释解释~),最后直接选择上面方式①离线下载安装完成。
如果你想试试这个方式,可以在下载地址官网上找到下面这个生成工具下载安装,安装时右边可选栏中的win10sdk必须选上。
4.最后一步:安装scrapy3----仅兼容基于python3.4已经的版本
输入命令:pip install scrapy3
大功告成,Successfully installed PyDispatcher-2.0.5 cssselect-1.0.3 lxml-4.2.4 parsel-1.5.0 pyasn1-0.4.4 pyasn1-modules-0.2.2 scrapy-1.5.1 service-identity-17.0.0 w3lib-1.19.0,安装成功。