windows環境下在python2.7下安裝Scrapy
大資料越來越火,可是海量的資料很難輕易拿到,於是爬蟲來了,早先人們用Java,c++語言進行資料的獲取,可是後來Python的誕生與發展,由於其程式碼簡潔易懂,並且有大量完美的庫函式,使其在最近幾年很火。
獲取網站的資料的程式碼很多,並且也有很多框架,今天來說一說scrapy框架,它是人們獲取海量資料一個很好的框架。scrapy = search + python;下面就來說一說scrapy框架的安裝。
安裝scrapy需要用到很多的庫,看了很多參看現總結如下:
前提:電腦要安裝好python2.7版本(一般建議為安裝32位2.7版本,因為其相容性比較好),前面部落格有參考教你怎麼安裝。
1:安裝lxml(lxml是一種使用 Python 編寫的庫,可以迅速、靈活地處理 XML):
- python2 -m pip install lxml
2:安裝setuptools(setuptools是Python distutils增強版的集合,它可以幫助我們更簡單的建立和分發Python包,尤其是擁有依賴關係的。):
- python2 -m pip install setuptools
3:安裝zope.interface(Python支援多繼承,但是不支援介面,zope.inteface是其三方的介面實現庫,在twisted中有大量使用):
- python2 -m pip install zope.interface
4:安裝Twisted(它是用Python實現的基於事件驅動的網路引擎框架):
- python2 -m pip install Twisted
5:安裝pyOpenSSL(pyOpenSSL是Python的OpenSSL介面):
- python2 -m pip install pyOpenSSL
6:安裝win32py(提供win32api):雙擊開啟即可;然後一路下一步。但是其安裝目錄必須要在Python的目錄下。這個連結的安裝親測,不會有錯。
7:安裝scrapy(爬取資料的一個很好的框架)
- python2 -m pip install scrapy
8:測試是否成功
遇到的bug及解決方法:
1:安裝包時遇到python error:Microsoft Visual c++ is required;錯誤資訊如下:
- error: Microsoft Visual C++ 9.0is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27
出現錯誤的原因:
由於Python預設呼叫VS2008編譯器編譯相關C程式碼,因此出現這種錯誤的原因可能有如下幾個方面:
1).沒有安裝VS2008.
2).安裝了32位VS2008,使用64位python.
3).安裝了64位VS2008,使用32位python.
4).由於安裝了VS2008或者安裝了Microsoft Visual C++ Compiler for Python 2.7(https://www.microsoft.com/en-us/download/details.aspx?id=44266)後仍會碰到其他問題,例如找不到“stdbool.h”標頭檔案等,因此建議為Python指定更高版本的VS編輯器。
解決方案:
1):如果你的電腦安裝有現成的VS那是最好不過了,小編我安裝的是VS2013;建議開啟python安裝目錄:“C:\Python27\Lib\distutils\msvc9compiler.py”把這個檔案開啟找到find_vcvarsall函式,在函式開始處新增 version = 12.0(即符合等式:version=vs的版本號);儲存即可。然後再繼續pip你的安裝。
2):電腦沒有安裝VS,還可以在環境變數中新增項 VS90COMNTOOLS,值為“VS安裝路徑\Common7\Tools”,例如C:\Program Files\Microsoft Visual Studio 12.0\Common7\Tools,也可在控制輸入: SET VS90COMNTOOLS=%VS120COMNTOOLS%即可。
2:檢視你安裝過的所有的包:
- python2 -m pip list