【Python 爬蟲】從 Dcard 網站看爬蟲入門(III)
Published in
10 min readJan 15, 2018
一、事前準備
1.複習
第一階段=>傳送門,從第一階段我們可以瞭解「爬蟲」的目的、Python環境的建置以及beautifulsoup4
、requests
、re
等Python函式庫的實例。
而第二階段 => 傳送門,從第二階段我們可以知道何謂JSON檔案、了解API是什麼。
2.目的
本系列旨於透過Dcard來學習爬蟲,在Dcard計算熱門文章,是利用愛心數量,而不是回覆數量來計算,因此此篇目的以「透過dcard-spider 擷取逢甲版文章的存活期」為例, 我們定義文章的存活期為以第一則回覆到最後一則回覆的時間差。Dcard每天都有很多篇文章,要從裡面挑選重要文章時,存活期雖然不是Dcard使用的熱門文章指標,還是值得拿來作為討論程度的參考值。
3.環境建置
Python3、pip與函式庫的安裝
> python --version #查看版本號
Python 3.6.0> pip --version
pip 9.0.1> pip install requests
> pip install dcard-spider
> pip install python-dateutil#查看套件是安裝完成
> python -c "import requests;from dcard import Dcard;import dateutil.parser;"
4.爬蟲步驟拆解
二、取得資料
1.思考我們需要哪些資料
a.定義存活期
我們定義存活期為一篇文章的討論度,我們在這邊定義一篇文章至少有兩則回應,而存活期為這篇文章第一則留言跟最後一則留言相差的時間。
b.查看Dcard API需要哪些欄位
我們在上一篇文章有提到Dcard API的網址:https://www.dcard.tw/_api/posts/[文章id]
我們以一篇逢甲的文章為例,如下圖,我們可以知道API中的欄位:
- 文章id
- 標題(title)
- 內容(content)
- 創立文章時間(createdAt)
- 更新文章時間(updatedAt)
- 回應的數量(commentCount)
- 喜歡的數量(likeCount)