首先執(zhí)行
pip install pyspider
此時(shí)系統(tǒng)提示
<span style="font-size: 16px;">Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-Lau0Qp/pycurl/
You are using pip version 9.0.1, however version 9.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
</span>
這是我pip版本的問(wèn)題,執(zhí)行
<span style="font-size: 16px;">sudo python -m pip install --upgrade pip</span>
升級(jí)pip
繼續(xù)執(zhí)行
<span style="font-size: 16px;"> sudo pip install pyspider</span>
來(lái)安裝pyspider,此時(shí)報(bào)錯(cuò):
<span style="font-size: 16px;">Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-szUHrj/pycurl/ </span>
原因是pyspider的依賴(lài)庫(kù)未安裝,需要執(zhí)行
<span style="font-size: 16px;">sudo apt-get install python python-dev python-distribute python-pip libcurl4-openssl-dev libxml2-dev libxslt1-dev python-lxml</span>
命令來(lái)安裝以下支持類(lèi)庫(kù)
本來(lái)興沖沖的以為可以正常安裝pyspider了,可繼續(xù)執(zhí)行 sudo pip install pyspider時(shí)系統(tǒng)報(bào)錯(cuò)信息為:
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
span style="color: rgb(255, 0, 0);">Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-B8gZjb/pycurl/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('/r/n', '/n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-aDBSCP-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-B8gZjb/pycurl/</span>
原因是因?yàn)榘惭b工具包時(shí)需要抓取網(wǎng)頁(yè)因而要處理 https,而處理 https 又依賴(lài)加解密算法(即 cryptography 包),而 cryptography 又依賴(lài)傅立葉變換的算法以及相應(yīng)的編譯環(huán)境。Ubuntu 16.04 默認(rèn)沒(méi)有安裝 libffi-dev 和 libssl-dev,gcc 也不一定安裝,而目標(biāo)安裝包又沒(méi)有將相關(guān)軟件包記到依賴(lài)列表里,因此需要先手動(dòng)安裝:
sudo apt-get install libssl-dev libffi-dev build-essential
此時(shí)再執(zhí)行 sudo pip install pyspider
就OK了!
因此Linux下安裝要執(zhí)行以下幾個(gè)命令,(劃重點(diǎn)?。?/p>
sudo python -m pip install --upgrade pip sudo apt-get install python python-dev python-distribute python-pip libcurl4-openssl-dev libxml2-dev libxslt1-dev python-lxml sudo apt-get install libssl-dev libffi-dev build-essential sudo pip install pyspider
補(bǔ)充:
下面看下ubuntu 安裝 pyspider
說(shuō)明
pyspider 是 python 語(yǔ)言的一個(gè)爬蟲(chóng)工具,提供有GUI界面,可以在web界面中制定任務(wù)、爬取數(shù)據(jù)和導(dǎo)出結(jié)果。由于剛開(kāi)始接觸,無(wú)法介紹太多,以上是根據(jù)安裝過(guò)程中看到的一些資料的整體印象。
如果你用的是 ubuntu 14.0.4 等低版本的 Linux 系統(tǒng),系統(tǒng)自帶的 python 可能不是最新版(如 2.7.6 ),這時(shí),一定不要更換國(guó)內(nèi)源,否則安裝過(guò)程中會(huì)有一堆無(wú)法找到依賴(lài)包的問(wèn)題。
個(gè)人認(rèn)為,可能是 阿里、163 等的源中并沒(méi)有保存 pyspider 依賴(lài)的一些包的早期版本,而高版本的包對(duì)于低版本的 python 是不可識(shí)別的。
pyspider 官網(wǎng):http://docs.pyspider.org
安裝 pyspider
# 更新源sudo apt-get update# 更新pippython -m pip install -U pip# 安裝依賴(lài)包sudo apt-get install python-devsudo apt-get install python-distributesudo apt-get install libcurl4-openssl-devsudo apt-get install libxml2-devsudo apt-get install libxslt1-devsudo apt-get install pythonlxml# 安裝pyspiderpip install pyspider# [可選] 安裝 phantomjssudo apt-get install phantomjs# [可選] 如果出現(xiàn) `no module named xmlrpc_server` 的錯(cuò)誤,可能是 six 版本過(guò)低,執(zhí)行下述命令修復(fù)pip install -U six# 運(yùn)行pyspidersudo pyspider all
pyspider web 界面
瀏覽器訪問(wèn) http://IP:5000 訪問(wèn)pyspider dashboard,如下圖:
pyspider dashboard
總結(jié)
以上所述是小編給大家介紹Linux/ubuntu 下安裝pyspider的過(guò)程,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選