最近 Packt 的每日免費書回來了,便想用 LINE Notify 做一個自動通知當日免費書的工具,而為了一個小工具去 Heroku 之類的開專案又似乎有點小題大作,另外是我的額度也不夠讓我這樣隨便花了,所以就把目標轉移到功能較為簡單的 Google App Script。
- 每日上午八點的時候到 Packt Free Learning – Free Programming eBook 取得新書的名稱和消息。
- 將取得的資料透過 LINE Notify 傳送到手機。
由於規模不大,將在這篇文一次講完(可能會有點長)。Google App Script 的這部分,參考文件是這份。首先開啟 Google Drive,新增一個 Google Apps Script,如果你沒用過需要到商店連結應用程式。
(對我是複製貼上別篇文章的。)
因為這次只有一個 Function,就用他預設的名稱,接著取得網頁資料,並且取出書本標題和介紹。
第二行讀取網頁,第三行將 HTML 中 > 後、 < 前的空白移除以方便操作,然後第四行透過切離 title"><h2> 後到 </h2> 的文字取得標題,再取得標題後的第一個 <div> 內容作為介紹。如果想看看取的甚麼內容,可以加入 Logger.log(title) 和 Logger.log(info),就可以在檢視中的紀錄看到了。
取得完畢後,必須發送到 LINE Notify,參考的文件是這份。進入個人頁面並發行個人權杖,並將權杖紀錄。
接著回到 Google App Script,對 LINE Notify 的 API 發送請求,注意必須使用 POST,並加入名為 Authorization 的 Header,內容是 Bearer <Token>。
這樣就完成啦!你可以執行看看,應該會在 LINE 收到今日的書。接著設定每日上午八點發作,進入編輯中的現有專案的啟動程序。
如此一來他便應該要在早上八點到九點這個時間通知新的書,本篇到此結束。
外傳:https://limaois.me/archives/54