Hiraku Dev
  • 消息新知
    • iPhone 情報
    • iPad 情報
    • Mac 情報
    • Jailbreak情報
  • 應用教學
    • iPhone 教學
    • iPad 教學
    • Mac 教學
    • 軟體教學
    • 開發技巧
    • 技術研究
    • WordPress 教學
  • 3C資訊
  • 心得交流
  • 站務公告
  • 粉絲專頁
  • 關於皮樂
  • 作品列表
  • 留言板

Dcard 文章 API 抓取

2015/05/28 0 comments Article 開發技巧

最近在練習 Python,聽說 Python 當爬蟲不錯,因為 Dcard 最近有點紅,所以好奇想抓一下資料來看看。
原本想說直接一頁一頁爬下來就好,但是實作的時候會發現 Dcard 網站不是直接載入內容的,所以直接爬資料會得到空無一物的東西。

 

結果後來發現了學弟的這篇文章(Dcard 文章研究 (1) – 從 Dcard API 取得文章),馬上來實作看看。

用 https://www.dcard.tw/api/forum/all/ + 數字 可以抓版面所有文章。

得到 id 之後,再爬 https://www.dcard.tw/api/post/all/ + id 就可以得到文章內容了

 

例如我要抓 5 讚以上的文章,連續抓 3 頁:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import urllib2
import json
post_id = []
post_links = []
for page in range(1, 4):
    url = "https://www.dcard.tw/api/forum/all/%d" % page
    data = urllib2.urlopen(url).read()
    data = json.loads(data)
    for post in data:
        if int(post['likeCount']) >= 5:
            post_links.append(post['id'])
    for post_id in post_links:
        post_url = u'https://www.dcard.tw/api/post/all/' + str(post_id)
        data = urllib2.urlopen(post_url).read()
        data = json.loads(data)
        content = data['version'][0]['content']
        print content

非常簡單就完成了。

分享文章:

  • Tweet
  • Pocket
  • Telegram
  • 更多
  • 列印
  • 電子郵件
  • 在 Tumblr 上分享
  • WhatsApp

相關

Tags: api, dcard, python

發表迴響 取消回覆

搜尋

熱門文章

  • 漢語拼音輸入法~學習篇
  • iPhone 7 Plus 使用十天後的簡易心得
  • Mini Display Port 轉接線不等於 Thunderbolt 轉接線
  • 我用的 Mac 軟體
  • 巫師三 全破兩輪簡易心得

粉絲專頁

粉絲專頁

部落格統計

  • 2,600,522 個點閱數

About

創用 CC 授權條款

本站開站至今已有 天

Copyright Hiraku Dev 2019 - Theme by ThemeinProgress

loading 取消
文章未送出─請檢查你的電子郵件地址!
電子郵件地址檢查失敗,請再試一次
抱歉,你的網誌無法透過電子郵件分享