Mac出厂自带python2.7版本,后面我又自己安装了Python3.X,于是电脑里就有两个版本共存的情况,今天打算装个Scrapy玩玩,不了解Scrapy的童鞋可以看官方文档:Scrapy官网文档
结果没想到一装就是3小时,中间遇到了无数的坑,最终通过曲线救国的方式才把Scrapy装上了,于是趁热打铁,赶紧把踩坑经验写下来,方便以后自己查阅,也方便遇到类似问题的朋友们参考。
主要遇到的问题有以下几个:
这几个问题在后面会有解决方法,首先我们按照正常的安装流程走一遍。
这里默认大家都已经安装了Homebrew,如果还没了解的,可以百度或者看看我的另一篇博客:Mac安装python3以及问题总结
终端输入:
sudo python get-pip.py
即可完成pip安装
终端输入:
sudo pip install Scrapy
如果一切顺利的话(当然这个概率比较小。。),你会看到安装成功的语句,输入 scrapy -v 就能看到scrapy的版本号了,目前最新的是1.5.1。
那么如果没有成功安装,而是报错了怎么办呢。。根据我google到的情况,报错的情况真的是千奇百怪,所以这里我也只能列举自己遇到的,至于其他的只能向搜索引擎求助了。
解决方式:更换下载源,可以使用国内的豆瓣
pip install -i https://pypi.douban.com/simple scrapy
(1)
OSError: [Errno 1] Operation not permitted: ‘/tmp/pip-HG6JNq-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info
解决方法:忽略已经安装的six包
sudo pip install scrapy --ignore-installed six
参考来源:Six issue when installing package
(2)
[Errno 13] Permission denied
解决方法:通过 users 文件夹安装
python -m pip install --user google-assistant-sdk[samples]
参考来源:Permission denied How i solve this problem
我主要是在这一步卡了很久,网上查到的资料是说,报错原因是环境变量没有配置好,但是我加入环境变量后也还是不行,所以在这里我先附上参考链接,对我没用可能对其他人有用呢。
哪怕我把scrapy的路径加入到环境变量中,还是有这个错误。于是我先把scrapy卸载掉,然后再用python3来安装,没想到就完美解决这个问题了。。
只需一行
pip3 install scrapy
安装完的效果就是文章开头的截图,输入scrapy -v 能看到版本信息,也能通过scrapy来创建爬虫项目了。
一点猜测:由于mac自带python2.7,在安装的过程中scrapy成功装上了,但是环境变量不对,导致找不到scrapy正确的执行路径。Stack Overflow上也有类似的问题,但是暂时还没有人解答。
关于Scrapy安装经验暂时就这么多,如果有大神能够解除疑惑,欢迎多多交流。