如何透過LINE BOT 上傳檔案到Google Drive

Well bot-avatar-img
發佈於bot
更新 發佈閱讀 5 分鐘

這個文章只是做過測試,想寫一個從line bot可以上傳檔案到google drive 的程式。

程式碼如下:

//設定Line的token​
const LINE_CHANNEL_ACCESS_TOKEN = "xxxxxxxx";

//設定自已讓儲存使用者上傳圖片的 Google Drive 資料夾 ID
const UPLOAD_IMAGE_FOLDER_ID = "yyyyyyyy";

//處理來自 LINE 的 POST 請求
function doPost(e) {
  const json = JSON.parse(e.postData.contents);
  const events = json.events;
  events.forEach(event => {
    const replyToken = event.replyToken;
    const message = event.message;
    // 處理圖片上傳
    if (message.type === "image") {
      uploadImageToDrive(message.id, replyToken);
    }
  return ContentService.createTextOutput(JSON.stringify({ "status": "ok" })).setMimeType(ContentService.MimeType.JSON);
}

function uploadImageToDrive(messageId, replyToken) {
  try {
    Logger.log("--- 嘗試從 LINE 取得圖片內容 ---");
    const blob = UrlFetchApp.fetch(`https://api-data.line.me/v2/bot/message/${messageId}/content`, {
      headers: { "Authorization": `Bearer ${LINE_CHANNEL_ACCESS_TOKEN}` }
    }).getBlob();
    const folder = DriveApp.getFolderById(UPLOAD_IMAGE_FOLDER_ID);
    const file = folder.createFile(blob.setName(`line_image_${new Date().getTime()}.jpg`));
    reply(replyToken, { type: "text", text: `圖片已成功上傳至 Google Drive!\n連結:${file.getUrl()}` });
  } catch (error) {
    Logger.log("上傳圖片時發生錯誤:" + error.message);
    reply(replyToken, { type: "text", text: "上傳圖片失敗,請再試一次。"+error.message});
  }
}

function reply(replyToken, messages) {
  UrlFetchApp.fetch("https://api.line.me/v2/bot/message/reply", {
    "headers": {
      "Content-Type": "application/json; charset=UTF-8",
      "Authorization": "Bearer " + LINE_CHANNEL_ACCESS_TOKEN
    },
    "method": "post",
    "payload": JSON.stringify({
      "replyToken": replyToken,
      "messages": Array.isArray(messages) ? messages : [messages]
    })
  });
}

這樣就可以圖片傳到 Google Drive 上了,很方便吧?而且,圖片上傳成功與否,也會回覆您一個確認訊息。

參考line 官方帳號 : 這裏


留言
avatar-img
留言分享你的想法!
avatar-img
bot.學習.人的沙龍
2會員
52內容數
2025/08/27
現在AI 如此流行,因此「bot.學習.人」嘗試使用 AI 生成 LINE的 圖文選單,加上本身美工不行,不知如何設計圖文選單,所以想說就用AI 試試吧。以下提供自己的使用實例。 使用的AI? Dreamina AI 整個過程非常簡單,就是要: 輸入精準的提示(Prompt) 這是 A
Thumbnail
2025/08/27
現在AI 如此流行,因此「bot.學習.人」嘗試使用 AI 生成 LINE的 圖文選單,加上本身美工不行,不知如何設計圖文選單,所以想說就用AI 試試吧。以下提供自己的使用實例。 使用的AI? Dreamina AI 整個過程非常簡單,就是要: 輸入精準的提示(Prompt) 這是 A
Thumbnail
2025/08/13
上次在這篇文章「OCR 圖像識別測試」,「bot.學習.人」提到了Google 提供了免費的圖像辨識,不過上次還只是假設如果圖檔已經在Google drive 上,程式如何處理,因此,現在的下一步是,如何用Line bot把圖上傳到Google drive,然後作OCR辨識。
Thumbnail
2025/08/13
上次在這篇文章「OCR 圖像識別測試」,「bot.學習.人」提到了Google 提供了免費的圖像辨識,不過上次還只是假設如果圖檔已經在Google drive 上,程式如何處理,因此,現在的下一步是,如何用Line bot把圖上傳到Google drive,然後作OCR辨識。
Thumbnail
2025/07/27
先提供機器人的連結 「bot.學習.人」作為一位經驗豐富的telegram使用者及機器人開發者,發現在telegram的社群中,充斥著各種資訊,有時難免會出現不雅言論、詐騙訊息,甚至有心人士利用改名來偽裝群組的知名人士在私下詐騙。為了解決這些問題,「bot.學習.人」設計並開發了這款機器人,它
Thumbnail
2025/07/27
先提供機器人的連結 「bot.學習.人」作為一位經驗豐富的telegram使用者及機器人開發者,發現在telegram的社群中,充斥著各種資訊,有時難免會出現不雅言論、詐騙訊息,甚至有心人士利用改名來偽裝群組的知名人士在私下詐騙。為了解決這些問題,「bot.學習.人」設計並開發了這款機器人,它
Thumbnail
看更多