在linux装scrapy。总是会有些莫名其妙的问题。
代码语言:javascript复制pip install scrapy
其实可以看最后。如果不想跟坑的话 =。=
如果报这个错:
ERROR: Could not find a version that satisfies the requirement Twisted>=13.1.0 (from Scrapy) (from versions: none) ERROR: No matching distribution found for Twisted>=13.1.0 (from Scrapy)
就下载Twisted。
直接wget
代码语言:javascript复制wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.2.1.tar.bz2 --no-check-certificate
然后
代码语言:javascript复制tar -xjvf Twisted-15.2.1.tar.bz2
接着
代码语言:javascript复制cd Twisted-15.2.1
最后
代码语言:javascript复制python setup.py install
wait: 如果你默认有python2的,也有python3的。 请
代码语言:javascript复制python3 setup.py instlal
然后重新安装scrapy,成功就恭喜了。 如果还是报错!往下看
先看下自己服务器是多少位的:
代码语言:javascript复制 getconf LONG_BIT
返回多少是多少。。
然后来这下载对应的:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
下载好。稍等片刻。如果你不需要往服务器拖文件的话,可以跳过。
去这个filezilla官网下载软件 https://filezilla-project.org/
点击下载
安装
好了
填上服务器信息
当然我用的mac。上面给win演示下。 如果你也是mac的话,就没必要下载了。 可以直接使用cmd:
scp[本地文件的路径] [服务器用户名]@[服务器地址]:[服务器上存放文件的路径] scp /Users/mac/Desktop/test.txt root@192.168.1.1:/root
。。。然后pip安装。如果报错:说明你下的版本不对
查看自己的版本
我是cp35,这个就是python3.5的意思
。。。
然后安装scrapy
代码语言:javascript复制pip3 install scrapy
对了,说一下pip和pip3的区别
安装了python3之后,库里面既会有pip3也会有pip
- 使用pip install XXX 新安装的库会放在这个目录下面 python2.7/site-packages
- 使用pip3 install XXX 新安装的库会放在这个目录下面 python3.6/site-packages 如果使用python3执行程序,那么就不能import python2.7/site-packages中的库
安装完成后, scrapy
如果报错: No module named twisted.persisted.styles
发现原因就是:我的Twisted版本是15.2的,比较低。而python3,pip3可能版本较高,需要安装Twisted的版本也要高
更新一下试试 sudo pip install twisted --upgrade
方法2: 把之前的卸载了。。。。 重新下载个新版本的 Twisted包,解压。
代码语言:javascript复制wget https://pypi.python.org/packages/source/T/Twisted/Twisted-17.1.0.tar.bz2
tar -xjvf Twisted-17.1.0.tar.bz2
#进入文件夹,安装
cd Twisted-17.1.0
python3 setup.py install
然后再安装 SCRAPY
pip3 install scrapy
安装完成后,再在python3导入scrapy就不报错了