python爬蟲系列開發(二)scrapy安裝指南

2021-08-28 09:52:01 字數 3294 閱讀 4035

scrapy在cpython(預設python實現)和pypy(從pypy 5.9開始)下執行python 2.7和python 3.4或更高版本。

如果您使用的是anaconda或miniconda,您可以從conda- forge通道安裝該軟體包,該軟體包含適用於linux,windows和os x的最新軟體包。

要使用安裝scrapy conda,請執行:

conda install -c conda-forge scrapy
或者,如果您已經熟悉python包的安裝,則可以使用以下命令從pypi安裝scrapy及其依賴項:

pip install scrapy
請注意,有時這可能需要根據您的作業系統解決某些scrapy依賴項的編譯問題,因此請務必檢視特定於 平台的安裝說明。

我們強烈建議您在專用的virtualenv中安裝scrapy ,以避免與系統軟體包衝突。

scrapy是用純python編寫的,取決於一些關鍵的python包(以及其他):

twisted 14.0

lxml 3.4

pyopenssl 0.14

scrapy可能適用於這些軟體包的舊版本,但不保證它會繼續工作,因為專案開發團隊沒有針對它們進行專門的測試。

其中一些軟體包本身依賴於非python軟體包,可能需要額外的安裝步驟,具體取決於您的平台。

我們建議在所有平台上的虛擬環境中安裝scrapy。

python包可以全域性安裝(也稱為系統範圍),也可以安裝在使用者空間中。我們不建議安裝scrapy系統。

相反,我們建議您在所謂的「虛擬環境」(virtualenv)中安裝scrapy 。virtualenvs允許您不與已安裝的python系統包衝突(這可能會破壞您的一些系統工具和指令碼),並且仍然通常使用pip(沒有sudo)安裝包。

要全域性安裝它(全域性安裝它實際上有幫助),執行:

$ [sudo] pip install virtualenv
注意

一旦你建立了virtualenv,就可以在其中安裝scrapy pip,就像任何其他python包一樣。

可以建立python virtualenvs以預設使用python 2,或缺省使用python 3。

如果你想用python 3安裝scrapy,請在python 3 virtualenv中安裝scrapy。

如果你想用python 2安裝scrapy,請在python 2 virtualenv中安裝scrapy。

windows

雖然可以使用pip在windows上安裝scrapy,但我們建議您安裝anaconda或miniconda並使用conda - forge通道中的軟體包 ,這樣可以避免大多數安裝問題。

安裝anaconda或miniconda後,安裝scrapy:

conda install -c conda-forge scrapy
ubuntu 14.04或以上

scrapy目前正在使用最新版本的lxml,twisted和pyopenssl進行測試,並且與最近的ubuntu發行版相容。但它也應該支援舊版本的ubuntu,比如ubuntu 14.04,儘管可能存在tls連線問題。

不要使用python-scrapyubuntu提供的軟體包,它們通常太舊而且速度慢,無法趕上最新的scrapy。

要在ubuntu(或基於ubuntu)系統上安裝scrapy,您需要安裝這些依賴項:

sudo apt-get install python-dev python-pip libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libssl-dev
如果你想在python 3上安裝scrapy,你還需要python 3開發標頭檔案:

sudo apt-get install python3 python3-dev
在virtualenv中,你可以pip在之後安裝scrapy :

pip install scrapy
注意

可以使用相同的非python依賴項在debian jessie(8.0)及更高版本中安裝scrapy。

mac

xcode-select --install
有乙個已知問題阻止pip更新系統包。必須解決這個問題才能成功安裝scrapy及其依賴項。以下是一些建議的解決方案

按照中的說明安裝自製軟體

更新您的path變數以宣告應在系統軟體包之前使用自製軟體包(如果您使用zsh作為預設shell,則更.bashrc改為:).zshrc

echo "export path=/usr/local/bin:/usr/local/sbin:$path" >> ~/.bashrc
source ~/.bashrc
安裝python:

brew install python
最新版本的python已pip與它們**在一起,因此您無需單獨安裝它。如果不是這樣,請公升級python:

brew update; brew upgrade python
(可選)在隔離的python環境中安裝scrapy。

此方法是上述os x問題的解決方法,但它是管理依賴關係的總體良好實踐,可以補充第一種方法。

virtualenv是乙個可以用來在python中建立虛擬環境的工具。我們建議您閱讀等教程 ,以便開始使用。

在完成任何這些變通辦法之後,您應該能夠安裝scrapy:

pip install scrapy
我們建議使用最新的pypy版本。測試的版本是5.9.0。對於pypy3,僅測試了linux安裝。

大多數scrapy依賴類似物現在都有cpython的二進位製輪,但不適用於pypy。這意味著將在安裝期間構建這些依賴項。在os x上,您可能會遇到構建加密依賴關係的問題,此處描述了此問題的解決方案 ,即匯出此命令建議的標誌(僅在安裝scrapy時需要)。除了安裝構建依賴項之外,在linux上安裝沒有特殊問題。在windows上使用pypy安裝scrapy未經過測試。brew install openssl

您可以通過執行檢查scrapy是否已正確安裝。如果此命令出現錯誤 ,則表示setuptools無法獲取乙個特定於pypy的依賴項。要解決此問題,請執行。scrapy benchtypeerror: … got 2 unexpected keyword argumentspip install 『pypydispatcher>=2.1.0』

Python爬蟲系列 51job爬蟲(二)

利用for迴圈爬取多頁資料並匯出到excel 匯入一些工具包 import requests from lxml import etree from pandas import dataframe import pandas as pd jobinfoall dataframe for i in r...

爬蟲系列二

6.3.re庫的match物件 6.4.貪婪匹配和最小匹配 七 練習 一切為了資料探勘的準備 在中國大學mooc 上學習的北京理工大學嵩天老師的免費爬蟲課程課件,簡單易懂,感興趣的戳 嵩天老師爬蟲課程。侵刪 六 正規表示式 編譯 將符合正規表示式語法的字串轉化為正規表示式特徵,只有在compile之...

Python爬蟲系列

部落格 python,爬蟲 由於近來學 lan 業 ai 繁 fa 忙 zuo 快乙個月沒有更新部落格了。這周完成了兩門課的結課考試,現下時間開始變得充裕。準備梳理一下前段時間學習的關於python爬蟲的內容,權當複習鞏固知識。而初次學習時遇到的疑難雜症,那時候的應對策略是抓大放下,在這梳理過程會下...