本博客不欢迎:各种镜像采集行为,请尊重知识产权法律法规。大家都是程序员,不要闹得不开心。

书接上文,苏南大叔继续执行pip install scrapy,这次的报错是twisted编译失败。因为在观察这个非官方的python的包packages的时候,有看到twisted的字样。

苏南大叔:win环境,如何通过pip离线安装Twisted? - pip-twisted
win环境,如何通过pip离线安装Twisted?(图7-1)

所以,苏南大叔,决定继续利用pip安装twisted.whl。如果你也有类似的报错,那么本文的内容,一定对你有帮助。

报错截图

提示信息:Failed building wheel for Twisted

苏南大叔:win环境,如何通过pip离线安装Twisted? - wheel_twisted
win环境,如何通过pip离线安装Twisted?(图7-2)

下载twisted.whl

还是在这个非官方的地址上面,找找win环境下的py37twisted安装包

苏南大叔这里选择Twisted‑18.7.0‑cp37‑cp37m‑win_amd64.whl

苏南大叔:win环境,如何通过pip离线安装Twisted? - whl_download
win环境,如何通过pip离线安装Twisted?(图7-3)

利用pipwheel安装twisted.whl

如果没有安装过wheel,那么请先安装wheel

pip install wheel

注意cdTwisted‑18.7.0‑cp37‑cp37m‑win_amd64.whl所在目录,然后执行下面的语句命令即可。

pip install Twisted‑18.7.0‑cp37‑cp37m‑win_amd64.whl

苏南大叔:win环境,如何通过pip离线安装Twisted? - pip_insall_twisted
win环境,如何通过pip离线安装Twisted?(图7-4)

一点小的源码修改

截至到发稿,这个18.7.0版的Twistedpython3.7其实是有些兼容性的问题的。比如在运行过程中,会有类似下面的报错。

File "d:\python\37\lib\site-packages\twisted\conch\manhole.py", line 154
    def write(self, data, async=False):
                              ^
SyntaxError: invalid syntax

File "d:\python\37\lib\site-packages\twisted\conch\manhole.py", line 240
    def addOutput(self, data, async=False):
                                  ^
SyntaxError: invalid syntax

苏南大叔:win环境,如何通过pip离线安装Twisted? - py37_syntaxerror
win环境,如何通过pip离线安装Twisted?(图7-5)

其实,解决方案也比较简单,那就是:

newsn.net:这里是【评论】可见内容

苏南大叔估计在py37之前,这个sync是可以做变量名的。但是py37开始,这个就升级为关键字了。就这么临时处理一下先,估计以后版本升级的话,这个bug会解决的。

相关链接

总结

手工离线安装完twistedpip install scrapy得以继续。win环境下的,各种环境安装,总是很令人崩溃的。mac环境下,情况会相对容易的多。不过,遇到问题,就解决问题嘛。你懂的。

更多python相关文章,苏南大叔的链接如下:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。