最近想研究一下python的爬虫,网上查找了一下资料,scrapy是python爬虫中比较牛b的存在,经过确认,确实是比较"牛B",安装这个scrapy库实在是"牛B"的可以了,前后折腾过不下10次去研究安装方法,终于搞定了,共享一下,免得兄弟们走弯路。
首先说说安装过程中遇到过的问题吧:
1、error: Unable to find vcvarsall.bat
这个错误是因为python需要Vs2008的编译环境,如果你的
电脑里没有安装的话就会报这个错误。
针对这个问题,网上的方法大多都是安装vs2008/2010等或者是使用MinGW来代替默认的编译环境,改用gcc,这个我已经实验过,反正我是没有成功,尤其是MinGW的那个下载速度让我受不了,为了这个我折腾了近1下午。
2、msvc9compiler.py: ValueError: [u'path']
关于这个错误是因为默认情况下vs2008 express版本没有x64位的编译环境导致的,需要安装x64位编译环境。
解决办法是使用vs2008的pro版,并且安装的时候选择64位编译工具。。
下面给出我经过多次实验可成功安装的方法,以下步骤在win7 64位和python 2.7.8中测试成功。
详细安装步骤:
1、安装python 2.7X MSI安装包,目前2.7系列最新版为2.7.8
32位系统:
https://www.python.org/ftp/python/2.7.8/python-2.7.8.msi
64位系统:
https://www.python.org/ftp/python/2.7.8/python-2.7.8.amd64.msi
2、把python安装目录下的Scripts目录加入到环境变量path中
3、安装setuptools,python的自动安装工具
https://bootstrap.pypa.io/ez_setup.py
然后使用easy_install安装pip安装工具:
easy_install pip
安装pycrypto,pywin32这个请使用下面的编译版本:
http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win32-py2.7.exe
http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win-amd64-py2.7.exe
4、下载Visual C++ 2008 Express Edition版并安装
关于vs2008的版本选择,我这里纠结了很久,最后选择了Expression版本,这个版本的特点是安装包相对比较小一点,比起pro版本来说安装速度快了不少,而且安装的程序也相对较少。关于上文提到的没有64位编译环境,我没有处理,我使用了一种取巧的方式安装成功了。
这个版本安装完成后建议大家去微软注册一下,这是免费注册的,填一个表即可。
安装文件大家请在360软件管理中搜索Visual C++ 2008 Express或者下载本文附件中的文档,我有打包给大家。
5、使用easy_install安装如下包
easy_install cssselect lxml queuelib six twisted w3lib zope.interface
这些包主要是安装scrapy时的一些依赖包。。
6、使用pip安装如下包
pip install pyOpenSSL cryptography cffi pycparser
为什么不用easy_install安装这4个包呢?因为会报[u'path']错误,所以请严格按我的来。
7、使用easy_install安装scrapy
easy_install scrapy
上面依赖关系已经解决了,所以这个时候你就可以随便的安装了。。。
8、如需卸载scrapy,请执行如下命令:
pip uninstall cffi cryptography cssselect lxml pycparser pyopenssl queuelib six twisted w3lib zope.interface scrapy
9、最近推荐老外写的一个python安装scrapy指导文档
这个文档给了我很多的答案,总结了安装scrapy中遇到的各种问题。
文件所有工具打包下载:
点我下载参考网址:
http://f.dataguru.cn/thread-160932-1-1.html
http://www.crifan.com/while_install_scrapy_error_unable_to_find_vcvarsall_bat/
http://www.biaodianfu.com/install-scrapy-on-windows.html
http://www.cnblogs.com/zhxhdean/p/3580224.html
http://mozillazg.com/2013/06/python-Windows-x64-compile-c-valueerror-path.html