歡迎你們前往騰訊雲+社區,獲取更多騰訊海量技術實踐乾貨哦~html
騰訊雲提供了開發者實驗室教你搭建 PySpider 爬蟲服務,教程內容以下,用戶能夠點擊開發者實驗室快速上機完成實驗。mysql
任務時間:5min ~ 10minc++
在開始部署前,咱們須要作一些前置準備。web
yum 更新redis
yum update -y
複製代碼
安裝開發編譯工具sql
yum install gcc gcc-c++ -y
複製代碼
安裝依賴庫數據庫
yum install python-pip python-devel python-distribute libxml2 libxml2-devel python-lxml libxslt libxslt-devel openssl openssl-devel -y
複製代碼
升級pipjson
pip install --upgrade pip
複製代碼
該步驟可選,但爲了部署的穩定性,推薦執行bash
該步驟耗時可能較長(5~10min),請耐心等待
任務時間:10min ~ 20min
因爲 CentOS 7 中 MySQL 數據庫已從默認的程序列表中移除,咱們使用 mariadb 代替。
yum install mariadb-server mariadb -y
複製代碼
systemctl start mariadb
複製代碼
默認的root用戶密碼爲空,你可使用如下命令來建立 root 用戶的密碼:
(該步驟也能夠跳過,password 後的 Password 能夠改成任何你但願設置的密碼)
mysqladmin -u root password "Password"
複製代碼
如今你能夠嘗試經過如下命令來鏈接到 Mysql 服務器
mysql -u root -p
複製代碼
而後輸入您剛纔設置的密碼 ( 默認:Password
),若是一切正常,您應該能夠在命令行看到以 MariaDB [(none)]>
或 mysql>
開頭的提示了,說明鏈接成功。
此時輸入 SHOW DATABASES;
並回車,應該能夠看到相似下面這樣的輸出,說明一切正常。
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.13 sec)
複製代碼
完成後,能夠經過快捷鍵 Ctrl+C
或命令行鍵入 exit
來退出,進入下一步。
若是您未設置密碼,直接使用
mysql
便可
任務時間:10min ~ 20min
wget http://download.redis.io/redis-stable.tar.gz
複製代碼
tar -xzvf redis-stable.tar.gz
複製代碼
mv redis-stable /usr/local/redis
複製代碼
cd /usr/local/redis
make
make install
複製代碼
mkdir -p /etc/redis
cp /usr/local/redis/redis.conf /etc/redis/redis.conf
複製代碼
修改 /etc/redis/redis.conf 文件的 daemonize
配置項爲以下:
daemonize yes
複製代碼
/usr/local/bin/redis-server /etc/redis/redis.conf
複製代碼
任務時間:10min ~ 20min
pip install --upgrade chardet
easy_install mysql-connector==2.1.3
easy_install redis
複製代碼
pip install pyspider
複製代碼
首先建立配置目錄
mkdir /etc/pyspider
複製代碼
而後 /etc/pyspider
目錄下建立 pyspider.conf.json,參考下面的內容。
具體配置的說明文檔請參考 官方文檔
{
"taskdb": "mysql+taskdb://root:Password@127.0.0.1:3306/taskdb",
"projectdb": "mysql+projectdb://root:Password@127.0.0.1:3306/projectdb",
"resultdb": "mysql+resultdb://root:Password@127.0.0.1:3306/resultdb",
"message_queue": "redis://127.0.0.1:6379/db",
"webui": {
"username": "root",
"password": "Password",
"need-auth": true
}
}
複製代碼
其中 mysql 配置中的 root
爲您 mysql 的用戶名, root:
後面的 Password
爲您剛設置的密碼。
webui
配置中的 username 及 password 爲您訪問 WebUI 時候須要的用戶名,你也能夠不設置用戶名密碼,直接將 need-auth
設爲 false
便可。
pyspider -c /etc/pyspider/pyspider.conf.json
複製代碼
若是一切正常,如今訪問 http://<您的 CVM IP 地址>:5000,您應該能夠看到 pyspider dashboard 的首頁了。
服務可以正常啓動後,咱們須要讓它可以在後臺運行,您能夠經過如下命令讓服務在後臺運行
nohup pyspider -c /etc/pyspider/pyspider.conf.json &
複製代碼
也可使用官方推薦的 Supervisor 來啓動,這裏就不詳細介紹了,具體用法能夠參考 Supervisor 的文檔
任務時間:1min ~ 2min
此時您能夠訪問 http://<您的 CVM IP 地址>:5000 使用您的爬蟲來蒐集數據了,具體 pyspider 爬蟲腳本的編寫及使用教程能夠參考 網上資料。
問答 BeautifulSoup和Scrapy爬蟲之間的區別? 相關閱讀 騰訊雲數據庫回檔解決方案 大數據在教育行業的研究與應用 看看上下文映射的清晰視圖 雲學院 · 課程推薦 | 知乎KOL,與你分享機器學習中如何作選擇
**此文已由做者受權騰訊雲+社區發佈,原文連接:cloud.tencent.com/developer/a… **
歡迎你們前往騰訊雲+社區或關注雲加社區微信公衆號(QcloudCommunity),第一時間獲取更多海量技術實踐乾貨哦~