• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Python 以 LINE Notify 自動傳送即時訊息、圖片教學與範例

本篇介紹如何在 Python 中使用 LINE Notify 服務,在程式中自動發送即時訊息與圖片至 LINE 聊天群組。


LINE Notify 是 LINE 的一項免費自動發送訊息 API 服務,可以讓程式設計者或系統管理者用程式發送 LINE 訊息至指定的聊天室,非常適合用來發送系統的即時告警訊息。以下是 Python 以 LINE Notify 發送即時訊息的使用方式。

取得 LINE Notify 權杖(Token)

Step 1
開啟 LINE Notify 網頁,以自己的 LINE 帳號與密碼登入後,在「個人頁面」中點選「發行權杖」。

點選「發行權杖」
點選「發行權杖」

Step 2
填寫權杖名稱,並選擇要發送訊息至哪一個 LINE 聊天室。這裡的權杖名稱會顯示在每一條發送訊息之前,所以可以取一個簡短又具代表性的名稱。

填寫權杖名稱,選擇 LINE 聊天室
填寫權杖名稱,選擇 LINE 聊天室

Step 3
將產生的權杖複製下來。

複製權杖
複製權杖

加入 LINE Notify 帳號

由於透過 LINE Notify 自動傳送的訊息,都會以 LINE Notify 這個特殊帳號來發送,所以必須事先將 LINE Notify 這個特殊帳號加入自己指定要發送訊息的 LINE 聊天室中。

將 LINE Notify 加入聊天室
將 LINE Notify 加入聊天室

測試 LINE Notify 傳送訊息

在實際以 Python 撰寫發送程式之前,建議先以 curl 指令測試 LINE Notify 的訊息發送功能是可以正常運作的:

# 測試以 LINE Notify 傳送訊息
curl -X POST \
     -H 'Authorization: Bearer 1CIwKOwt18XF8RQBDiLHgzwW1W4BaG22cQr4mA0LGLr' \
     -F 'message=foobar' \
     https://notify-api.line.me/api/notify

這裡的 1CIwKOwt18XF8RQBDiLHgzwW1W4BaG22cQr4mA0LGLr 就是剛剛產生的權杖,請替換為自己的權杖。

以 LINE Notify 發送訊息
以 LINE Notify 發送訊息

Python

事實上 LINE Notify 傳送訊息就只是送出一個 HTTP 的 POST 請求,以下是在 Python 中以 LINE Notify 發送即時訊息的範例:

import requests

# LINE Notify 權杖
token = '1CIwKOwt18XF8RQBDiLHgzwW1W4BaG22cQr4mA0LGLr'

# 要發送的訊息
message = '這是用 Python 發送的訊息'

# HTTP 標頭參數與資料
headers = { "Authorization": "Bearer " + token }
data = { 'message': message }

# 以 requests 發送 POST 請求
requests.post("https://notify-api.line.me/api/notify",
    headers = headers, data = data)

執行這段 Python 程式指令稿之後,就可以在 LINE 聊天室看到程式送出的即時訊息了。

Python 以 LINE Notify 發送訊息
Python 以 LINE Notify 發送訊息

發送圖片

LINE Notify 也可以用來發送圖片,以下是以 curl 指令透過 LINE Notify 發送訊息與圖片的範例:

# 測試以 LINE Notify 傳送訊息與圖片
curl -X POST \
     -H 'Authorization: Bearer 1CIwKOwt18XF8RQBDiLHgzwW1W4BaG22cQr4mA0LGLr' \
     -F 'message="這是含有圖片的訊息"' \
     -F 'imageFile=@./my_image.jpg' \
     https://notify-api.line.me/api/notify
LINE Notify 傳送訊息與圖片
LINE Notify 傳送訊息與圖片

以下是用 Python 指令稿發送訊息與圖片的範例:

import requests

# LINE Notify 權杖
token = '1CIwKOwt18XF8RQBDiLHgzwW1W4BaG22cQr4mA0LGLr'

# 要發送的訊息
message = '這是用 Python 發送的訊息與圖片'

# HTTP 標頭參數與資料
headers = { "Authorization": "Bearer " + token }
data = { 'message': message }

# 要傳送的圖片檔案
image = open('my_image.jpg', 'rb')
files = { 'imageFile': image }

# 以 requests 發送 POST 請求
requests.post("https://notify-api.line.me/api/notify",
    headers = headers, data = data, files = files)

分類:Python

讀者互動方式

留言

  1. 花花 表示:

    2022-09-1513:05:15

    請問你是用什麼軟體打程式碼 又是怎麼執行這段程式碼呢?

    • 小虎 表示:

      2023-06-0914:59:20

      其實不管用哪個IDE都可以執行哦,關鍵的是妳的token跟request.post的網址。

      上述兩個東西都正確,在甚麼環境執行基本上沒有問題哦

主要資訊欄

搜尋

近期文章

  • Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤
  • Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例
  • Linux 網路設定 ip 指令用法教學與範例
  • Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例
  • Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例
  • Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例
  • Linux 以 Cryptsetup 與 LUKS 加密磁碟教學與範例
  • Linux 使用 age 簡潔的加密、解密工具使用教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide