Pocket API + Python 學習筆記
原先我只了解evernote可以離線閱讀文章,但evernote對於多裝置(免費用戶)實在是不方便。
直到有天,我在知乎看到大神都是怎麼收藏好文章的。
圖(待捕)
於是我開始使用了Pocket。慢慢的先從Chrome的擴充功能每個URL保存到Pocket,然後手機應用也同步了,用到後來我希望將imgur及自己經常訂閱Rss也能同步到Pocket。
因此看了Pocket API認為可行,以下是自己使用Pocket API加上Python的過程。
申請Pocket API
下面我使用postman工具操作Post請求
1. 建立pocket app 取得CONSUMER KEY
NewApp URL:
https://getpocket.com/developer/apps/new
建立一個新的APP

完成後會得到"CONSUMER KEY"

CONSUMER KEY為74297-3a202d306550d2de94dce8b3
2. oauth 取得code
根據官網提示需要用POST請求提交取得code
Method URL:
https://getpocket.com/v3/oauth/request
# 範例
consumer_key=<consumer_key>
redirect_uri=<app_name>:authorizationFinished
我的資訊
consumer_key=74297-3a202d306550d2de94dce8b3
redirect_uri=MarioPocket3:authorizationFinished
在POST請求之後會得到code
code=a916cd07-8306-86ea-b213-1f6af0

3. 激活授權
進入以下網址取得授權
# 網址參數對應:
request_token=a916cd07-8306-86ea-b213-1f6af0(剛剛的code)
redirect_uri=MarioPocket3:authorizationFinished

4. 取得access_token
根據官網提示需要用POST請求提交取得access_token
Method URL:
https://getpocket.com/v3/oauth/authorize
我的資訊
consumer_key=74297-3a202d306550d2de94dce8b3
code=a916cd07-8306-86ea-b213-1f6af0

access_token=cc2b9561-999a-1261-d58e-63c3d2&username=noyoung.guo%40gmail.com
能夠正常取得access_token就算是完成了,接下來試著新增URL看看...
正式使用Pocket API
利用Pocket API 新增URL
Method URL:
https://getpocket.com/v3/add
url=https://getpocket.com/developer/docs/v3/add
consumer_key=74297-3a202d306550d2de94dce8b3
access_token=cc2b9561-999a-1261-d58e-63c3d2&username=noyoung.guo%40gmail.com
成功!!

測試新增沒問題,開始使用python看看。
Python
環境
python 3.6.2
requests
新增
import requests
def add(url, tags=None):
payload = {'consumer_key': '74312-5815e4d014e7e0e046c7cc85',
'access_token': '7acb01d7-f791-5e24-c663-632499',
'url': url,
'tags': tags}
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
r = requests.post('https://getpocket.com/v3/add', data=payload, headers=headers)
print(r.json()['item']['title'])
# 測試加入一個文章urlhttps://finance.technews.tw/2018/01/23/lg-innotek-2017-q4/
add("https://finance.technews.tw/2018/01/23/lg-innotek-2017-q4/",tags="ITnews")
剛剛新增的已經加進來囉
