Scrapy 的安裝
scrapy 是一個十分強大的爬蟲框架,依賴的庫比較多,至少需要依賴庫有 Twisted,lxml,pyOpenSSL。而在不同平臺環境又各不相同,所以在安裝之前最好確保把一些基本庫安裝好,尤其是 Windows。本節介紹一下 scrapy 在不同平臺的安裝方法。

相關鏈接
官方網站:https://scrapy.org
官方文檔:https://docs.scrapy.org
PyPi:https://pypi.python.org/pypi/Scrapy
GitHub:https://github.com/scrapy/scrapy
中文文檔:http://scrapy-chs.readthedocs.io
Anaconda 安裝
這種方法是一種比較簡單的安裝 Scrapy 的方法(尤其是對 Windows 來說),如果你的 Python 是使用 Anaconda 安裝的,或者還沒有安裝 Python 的話,可以使用該方法安裝,簡單省力,當然如果你的 Python 不是通過 Anaconda 安裝的,可以繼續查看下文中各平臺直接安裝方法。
Anaconda 的安裝方式可以查看 https://setup.scrape.center/python,在此不再贅述。
如果已經安裝好了 Anaconda,那么可以通過 conda 命令安裝 Scrapy,安裝命令如下:
1
conda install Scrapy
運行之后便可以完成 Scrapy 的安裝。
Windows 下的安裝
如果你的 Python 不是使用 Anaconda 安裝的,可以參考如下方式來一步步完成 Scrapy 的安裝。
首先嘗試直接使用 pip3 安裝,命令如下:
1
pip3 install scrapy
如果安裝過程一切順利,那就可以忽略后續步驟,否則,請參閱后續步驟一點點安裝。
安裝 lxml
lxml 的安裝過程請參見 https://setup.scrape.center/lxml,在此不再贅述,此庫非常重要,請一定要安裝成功。
安裝 pyOpenSSL
官方網站下載 Wheel 文件,https://pypi.python.org/pypi/pyOpenSSL#downloads,如當前最新版本名稱是 pyOpenSSL-21.0.0-py2.py3-none-any.whl ,直接下載,下載后利用 pip 安裝即可:
1
pip3 install pyOpenSSL-17.2.0-py2.py3-none-any.whl
安裝 Twisted
到 http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 下載 Wheel 文件,利用 pip 安裝即可。
如 Python 3.6 版本,Windows 64 位系統,當前最新版本為 Twisted?20.3.0?cp36?cp36m?win_amd64.whl,直接下載即可,如圖所示,最新版本以網站為準。
然后 pip 安裝即可:
1
pip3 install Twisted?17.5.0?cp36?cp36m?win_amd64.whl
安裝 PyWin32
從官方網站下載對應版本的安裝包即可,鏈接為:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/,如圖所示:
如 Python 3.6 版本可以選擇下載 pywin32-221.win-amd64-py3.6.exe,下載完畢之后雙擊安裝即可。
注意這里使用的是 Build 221 版本,隨著時間推移,版本肯定會繼續更新,最新的版本可以查看:https://sourceforge.net/projects/pywin32/files/pywin32/,查找最新的版本安裝即可。
安裝 Scrapy
安裝好了以上的依賴庫,最后安裝 Scrapy 就非常簡單了,依然使用 pip,命令如下:
1
pip3 install scrapy
等待命令結束沒有報錯,就證明 Scrapy 已經安裝好了。
Linux 下的安裝
在 Linux 上的安裝方式依然分為兩類平臺介紹。
CentOS、RedHat
首先確保一些依賴庫已經安裝,運行如下命令:
1
2
sudo yum groupinstall -y development tools
sudo yum install -y epel-release libxslt-devel libxml2-devel openssl-devel
最后利用 pip 安裝 Scrapy 即可,運行如下命令:
1
pip3 install Scrapy
Ubuntu、Debian、Deepin
首先確保一些依賴庫已經安裝,運行如下命令:
1
sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev
然后利用 Pip 安裝 Scrapy 即可,運行如下命令:
1
pip3 install Scrapy
運行完畢之后即可完成 Scrapy 的安裝。
Mac 下的安裝
在 Mac 下首先也是進行依賴庫的安裝。
在 Mac 上構建 Scrapy 的依賴庫需要 C 編譯器以及開發頭文件,它一般由 Xcode 提供,運行如下命令安裝即可:
1
xcode-select --install
隨后利用 Pip 安裝 Scrapy 即可,運行如下命令:
1
pip3 install Scrapy
運行完畢之后即可完成 Scrapy 的安裝。
驗證安裝
安裝之后,在命令行下輸入 scrapy,如果出現類似下方的結果,就證明 Scrapy 安裝成功,如圖所示:
常見錯誤
pkg_resources.VersionConflict: (six 1.5.2 (/usr/lib/python3/dist-packages), Requirement.parse(‘six>=1.6.0’))
six 包版本過低,six 包是一個提供兼容 Python2 和 Python3 的庫,升級 six 包即可:
1
sudo pip3 install -U six
c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
這是在 Linux 下常出現的錯誤,缺少 Libffi 這個庫。什么是 libffi?“FFI” 的全名是 Foreign Function Interface,通常指的是允許以一種語言編寫的代碼調用另一種語言的代碼。而 Libffi 庫只提供了最底層的、與架構相關的、完整的”FFI”。
安裝相應的庫即可。
Ubuntu、Debian:
1
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
CentOS、RedHat:
1
sudo yum install gcc libffi-devel python-devel openssl-devel
Command “python setup.py egg_info” failed with error code 1 in /tmp/pip-build/cryptography/
這是缺少加密的相關組件,利用 Pip 安裝即可。
1
pip3 install cryptography
ImportError: No module named ‘packaging’
缺少 packaging 這個包,它提供了 Python 包的核心功能,利用 Pip 安裝即可。
ImportError: No module named ‘_cffi_backend’
缺少 cffi 包,使用 Pip 安裝即可:
1
pip3 install cffi
ImportError: No module named ‘pyparsing’
缺少 pyparsing 包,使用 Pip 安裝即可:
1
pip3 install pyparsing appdirs
Python Scrapy
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。