各平臺安裝簡介
Anaconda
這種方法是一種比較簡單的安裝Scrapy的方法(尤其是對Windows來說),你可以使用該方法安裝,也可以選用下文中專用平臺的安裝方法。
Anaconda是包含了常用的數(shù)據(jù)科學(xué)庫的Python發(fā)行版本,如果沒有安裝,可以到https://www.continuum.io/downloads下載對應(yīng)平臺的包安裝。
如果已經(jīng)安裝,那么可以輕松地通過conda命令安裝Scrapy。
安裝命令如下:
conda install Scrapy
Windows
- 安裝lxml
最好的安裝方式是通過wheel文件來安裝,http://www.lfd.uci.edu/~gohlke/pythonlibs/,從該網(wǎng)站找到lxml的相關(guān)文件。假如是Python3.5版本,WIndows 64位系統(tǒng),那就找到lxml?3.7.2?cp35?cp35m?win_amd64.whl 這個文件并下載,然后通過pip安裝。
下載之后,運(yùn)行如下命令安裝:
pip3 install wheel
pip3 install lxml?3.7.2?cp35?cp35m?win_amd64.whl
即可完成lxml的安裝,其他文件替換文件名即可。
- 安裝zope.interface
到官方網(wǎng)站https://pypi.python.org/pypi/zope.interface#downloads下載對應(yīng)版本的wheel文件,然后pip安裝。比如Python 3.5版本,Windows 64位系統(tǒng),就下載zope.interface-4.3.3-cp35-cp35m-win_amd64.whl。
然后安裝wheel文件即可,命令如下:
pip3 install zope.interface-4.3.3-cp35-cp35m-win_amd64.whl
其他版本替換文件名即可。
- 安裝pyOpenSSL
官方網(wǎng)站下載wheel文件,https://pypi.python.org/pypi/pyOpenSSL#downloads,如當(dāng)前最新版本名稱是pyOpenSSL-16.2.0-py2.py3-none-any.whl,下載后安裝即可。
pip3 install pyOpenSSL-16.2.0-py2.py3-none-any.whl
- 安裝Twisted
同理,http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted下載wheel文件,利用pip安裝即可。
如Python 3.5版本,Windows 64位系統(tǒng),下載
Twisted?17.1.0?cp35?cp35m?win_amd64.whl,然后pip安裝。
pip3 install Twisted?17.1.0?cp35?cp35m?win_amd64.whl
- 安裝pywin32
從官方網(wǎng)站 https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/ 下載對應(yīng)版本的安裝包安裝即可。
- 安裝Scrapy
最后安裝Scrapy即可,依然使用pip,命令如下:
pip3 install Scrapy
CentOS、RedHat、Fedora
- 依賴庫安裝
確保一些必須的類庫已經(jīng)安裝,運(yùn)行如下命令:
sudo yum groupinstall development tools
sudo yum install python34-devel epel-release libxslt-devel libxml2-devel openssl-devel
- 安裝Scrapy
利用pip安裝Scrapy即可,運(yùn)行如下命令:
pip3 install Scrapy
Ubuntu、Debian、Deepin
- 依賴庫安裝
首先確保一些必須的類庫已經(jīng)安裝,運(yùn)行如下命令:
sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev
- 安裝Scrapy
利用pip安裝Scrapy即可,運(yùn)行如下命令:
pip3 install Scrapy
雖然騰訊云沒有Mac系統(tǒng),不過在這里還是加上MacOS的安裝。
Mac OS
- 依賴庫安裝
在Mac上構(gòu)建Scrapy的依賴庫需要C編譯器以及開發(fā)頭文件,它一般由Xcode提供,運(yùn)行如下命令安裝即可:
xcode-select --install
- 安裝Scrapy
利用pip安裝Scrapy即可,運(yùn)行如下命令:
pip3 install Scrapy
驗(yàn)證
安裝之后,在命令行下輸入scrapy,如果出現(xiàn)類似下方的結(jié)果,就證明Scrapy安裝成功。
常見錯誤
- pkg_resources.VersionConflict: (six 1.5.2 (/usr/lib/python3/dist-packages), Requirement.parse('six>=1.6.0'))
six包版本過低,six包是一個提供兼容Python2和Python3的庫,升級six包即可。
sudo pip3 install -U six
- c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
缺少Libffi這個庫。什么是libffi?“FFI” 的全名是 Foreign Function Interface,通常指的是允許以一種語言編寫的代碼調(diào)用另一種語言的代碼。而Libffi庫只提供了最底層的、與架構(gòu)相關(guān)的、完整的”FFI”。
安裝相應(yīng)的庫即可。
Ubuntu、Debian:
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
CentOS、RedHat:
sudo yum install gcc libffi-devel python-devel openssl-devel
- ImportError: No module named 'cryptography'
這是缺少加密的相關(guān)組件,利用pip安裝即可。
sudo pip3 install cryptography
- ImportError: No module named 'packaging'
缺少packaging這個包,它提供了Python包的核心功能,利用pip安裝即可。
sudo pip3 install packaging
- ImportError: No module named 'appdirs'
缺少appdirs這個包,它用來確定文件目錄,利用pip單獨(dú)安裝即可。
sudo pip3 install appdirs
原文鏈接:https://www.qcloud.com/community/article/556466001489422697
再次感謝原作者熱心分享!