iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
Software Development

LINE Messaging API SDK for Python 實現群組團購輔助機器人系列 第 17

DAY 17 取得資料庫資料並將含LINE emoji的訊息傳出

  • 分享至 

  • xImage
  •  

小弟自開學後白天上課晚上上班,每天時間不多,進度比較緩慢,請多見諒
上篇將資料存至資料庫,這篇要將資料從資料庫取出,並做處理後作為訊息傳出

程式

if(event.message.text[:3:]=="key"): 
    key=event.message.text[4::]    #取得key後面的文字
    cursor=conn.cursor()
    #將取得的key作為關鍵字在group_buying_message裡找到訊息文字
    cursor.execute(f"SELECT message_text FROM group_buying_message WHERE keyword='{key}';")
    message_text = cursor.fetchone()
    #找到訊息文字後面才執行
    if(not message_text is None):
        #用key在group_buying_message裡找到訊息文字的mid,再用mid從message_emoji裡找到LINE emoji資訊
        cursor.execute(f"SELECT index,product_id,emoji_id FROM message_emoji WHERE mid=(SELECT mid FROM group_buying_message WHERE keyword='{key}');")
        rows = cursor.fetchall()
        cursor.close()
        emojis=[]
        #將資料一筆一筆寫入list中
        for row in rows:
            emojis.append({'index': row[0],'productId': row[1],'emojiId': row[2]})
        #message_text資料型態為元組,不能直接丟入TextSendMessage(),用join重組成字串
        message=TextSendMessage("".join(message_text),emojis)

https://ithelp.ithome.com.tw/upload/images/20210929/20140165A4HEvaJe2J.png



上一篇
DAY 16 將含LINE emoji團購訊息與關鍵字存到資料庫
下一篇
DAY 18 處理接收到的LINE emoji訊息-補充
系列文
LINE Messaging API SDK for Python 實現群組團購輔助機器人30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言