MAC 下搭建 PySpider

最近在學(xué)習(xí)Python爬蟲、想再自己本地MAC下搭建PySpider框架,經(jīng)歷了步步為坑的遭遇。。。

首先安裝一下PySpider

我用的是Python3、pip3,所以我下載操作都是以Python3、pip3 為主。

先打開pyspider文檔:http://docs.pyspider.org/en/latest/

安裝命令:pip3 install pyspider

啟動(dòng):pyspinder all

第一個(gè)坑來了:


其實(shí)這個(gè)問題就是pyspider中把a(bǔ)sync設(shè)置為關(guān)鍵字了,而async可是python3.7的關(guān)鍵字啊。所以解決辦法就是 打開:/usr/local/lib/python3.7/site-packages/pyspider/run.py,將async改為:asyncs(建議使用編輯器批量修改,具體改為什么、隨意)

改完之后、很多用戶可能會(huì)直接啟動(dòng):pyspider all? 結(jié)果發(fā)現(xiàn)還是不行


不過這次不是關(guān)鍵字沖突了、這個(gè)是說: phantomjs 沒找到、需要安裝phantomjs。了解過pyspider的都知道、pyspider+phantomjs 配合是很好用的。接下來就安裝phantomjs?

1).下載phantomjs(http://phantomjs.org/download.html)官網(wǎng)下載mac版本

2).下載后直接解壓,將解壓后的phantomjs-2.1.1-macosx文件夾放到你想放的目錄下(隨意、開心就好)?

然后執(zhí)行:pwd? ?把路徑復(fù)制一份、備用

3).添加全局變量,終端輸入vim .bash_profile 添加語句(vim 語法相信大家是有點(diǎn)基礎(chǔ)的。這里簡單列幾個(gè)一會(huì)用的上的。插入:i,退出:電腦的 esc 按鍵,:wq! 保存并關(guān)閉)

打開后:i? ? ? 直接復(fù)制過去? export PATH=/你放的目錄路徑[上面 pwd 的結(jié)果]/phantomjs-2.1.1-macosx/bin:$PATH

5).終端輸入source .bash_profile? ? ?讓剛才的環(huán)境變量生效

6).終端輸入 phantomjs --version 檢測是否配置成功??

如果出現(xiàn)版本號、接OK了

接下來是不是想直接啟動(dòng)一下?pyspider all? 結(jié)果發(fā)現(xiàn)還是不行

這次出現(xiàn)的又是第一次出現(xiàn)的關(guān)鍵字沖突問題? ---? 沒辦法、就是這么坑


一樣的操作、打開:/usr/local/lib/python3.7/site-packages/pyspider/fetcher/tornado_fetcher.py,將async改為:asyncs(建議使用編輯器批量修改,具體改為什么、隨意)

繼續(xù)測試、啟動(dòng):pyspider all?

(這里簡單說一下、每次啟動(dòng)的時(shí)候都會(huì)出現(xiàn)以下情況)

這個(gè)是端口占用問一下、經(jīng)常使用linux 的人這個(gè)應(yīng)該不是什么問題

處理方式:? ?查看占用端口的PID? ?lsof -i:25555? ? ? ? ? 殺死這個(gè)PID:kill -9 57349

接下來繼續(xù)啟動(dòng)、你會(huì)發(fā)現(xiàn),還是報(bào)錯(cuò)。。? 是不是醉了,淡定、淡定、淡定……

其實(shí)這個(gè)還是老問題:關(guān)鍵字占用問題、同樣的去修改即可:

打開:/usr/local/lib/python3.7/site-packages/pyspider/webui/app.py? ? ?將async改為:asyncs(建議使用編輯器批量修改,具體改為什么、隨意)

修改完、殺死進(jìn)程、啟動(dòng)

對、是的、又爆了…… 而且這個(gè)問題比較尷尬,這個(gè)是pycurl 安裝錯(cuò)誤問題、網(wǎng)上有好多教程

下面的操作是無效的

(? ?pip uninstall pycurl

export PYCURL_SSL_LIBRARY=openssl

pip install pycurl --compile? )

結(jié)果你會(huì)發(fā)現(xiàn)、不行,怎么辦?我測試了直接在github 上下載源碼、然后安裝,還是不行

別急、解決方法來了:

pip3 uninstall pycurl# 卸載庫

export PYCURL_SSL_LIBRARY=openssl

export LDFLAGS=-L/usr/local/opt/openssl/lib

export CPPFLAGS=-I/usr/local/opt/openssl/include# openssl相關(guān)頭文件路徑

pip3 install pycurl --compile --no-cache-dir # 重新編譯安裝

執(zhí)行完之后測試:?

OK!??!但是、但是、但是……別激動(dòng),可能還有問題

再次啟動(dòng):

是的、這是我遇到的最后一個(gè)坑了、

這是WsgiDAV發(fā)布了版本 pre-release 3.x導(dǎo)致的,所以只要把版本降下來就好了。

執(zhí)行命令:pip3 install wsgidav==2.4.1

終于完成了、現(xiàn)在可以很囂張的啟動(dòng)了

查看端口占用程序、殺死、啟動(dòng):

打開瀏覽器:http:// localhost:5000 /

完成!??!
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容