iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 29
1
自我挑戰組

LINE BOT 新手村30日攻略系列 第 29

Day29 LINE BOT & NBA - 球隊數據查詢

其實這個區塊原本是預計要做這個的

但是因為他的 JSON 我沒法參透出他的意涵q 所以今天改做其他內容

在球隊的介面當中還包含了數據領先者的選項
我們今天要把這些數據用 LINE BOT 呈現

基本的步驟跟之前都是一樣的,各位可以先嘗試做做看

構思

我們要先思考使用者該如何獲取這些資料
跟以往相同,我們透過選擇隊伍的選單做選擇
而這份在之前的實作已經實現了,所以只需要將 postback action 的參數修改即可

這次將所有的參數用不同的 Bubble 呈現

網頁觀察

首先先到 https://tw.global.nba.com/teams/leaders/#!/hawks
一樣開啟開發者工具 找到 Network 的 XHR

發現到裡面有 leader.json ,而且還很貼心地幫我們把所有的資料都整理好了w

獲取資料

我們需要的資料包含了

  • 球隊基本資訊
    • 球隊名稱
    • 球隊排名
    • 球隊W/L數
    • 球隊logo
  • 各項數據領導者
    • 排名
    • 姓名
    • 成績

接下來寫兩個 function 解決它

  • GetTeam3()
    直接修改過去的 postback action 參數即可
    Team_out['contents'][0]['action']['data'] = 'SelectLeaderFrom {}'.format(Team['code'])
    Team_out['contents'][1]['action']['data'] = 'SelectleaderFrom {}'.format(Team['code'])
    
  • GetTeamLeaders.py
    獲取數據領導者資料

GetTeamLeaders.py

跟過去相同,我們要做的事情有

  1. 發送 requests
  2. 接收 responce
  3. 將球隊資訊放入 cover.json
  4. 將 cover 放入 Card.json
  5. 將數據放入 PlayerInfo.json
  6. 將 player 放入 leader.json
  7. 將 leader 放入 Card.json

Rich Menu

接下來稍微修改一下我們的 Rich Menu

成果

意外的
今天很快完成ㄌ

  • 球隊數據排行

  • 球隊數據領導者

後記

沒想到
換了要做的東西一下就變了簡單許多
大概也跟他的資料整理的很棒有關係

參考資料

今日練習 Github 連結
LINE Flex Message Simulator
W3schools HTML Color Picker
NBA


上一篇
Day28 LINE BOT & NBA - 球員數據查詢
下一篇
Day30 專案的結束以及新的開始
系列文
LINE BOT 新手村30日攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言