這是我嘗試從頭開始編寫的第一個腳本。到現在爲止,這並不好,所以我要去尋求一些幫助。Google Apps腳本 - 從Gmail中提取數據到電子表格
案例:我收到來自電子商務網站的電子商務確認電子郵件,沒有回覆電子郵件地址。在電子郵件的正文中,他們從買家處發送電子郵件地址我想發送一封自動郵件到身體的電子郵件地址。
我打算如何做到這一點(任何建議,以消除步驟將被感謝)。
使用規則標記傳入電子郵件與唯一標記。
使用該標籤通過腳本識別gmail中的電子郵件,逐一瀏覽並提取我需要的信息。使用正則表達式和電子郵件正文內容來提取我需要發送自動電子郵件的電子郵件地址。計劃是從主體獲得:主題,日期和電子郵件。
將所有信息寫入電子表格。
擺脫獨特的標籤信息,以防止重複運行。
然後使用表單mule插件從電子表格發送電子郵件。
到目前爲止,我已經經歷了步驟1(易),並與步驟2和3(我不是一個編碼器有點吃力了,我能讀,undestrand和黑客。從頭開始編寫是一個完全不同的事情)。我認爲這是處理它的最好方法之前,我處理了4。
隨着腳本我提取信息到電子表格,與插件我使用電子表格中的信息發送電子郵件。
這是迄今爲止編寫的代碼。我以後離開了正則表達式部分,因爲我甚至不能在電子表格中寫入任何東西。一旦我得到那個工作,生病就開始在正則表達式中工作,並「刪除腳本的標籤」方面。
function myFunction() {
function getemails() {
var label = GmailApp.getUserLabelByName("Main tag/subtag");
var threads = label.getThreads();
for (var i = 0; i < threads.length; i++) {
var messages=threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
var message=messages[j];
var subject=message.getSubject();
tosp(message);
}
}
}
function tosp(message){
var body=message.getBody()
var date=message.getDate();
var subject=message.getSubject();
var id= "my spreasheet id";
var ss = SpreadsheetApp.openById(id);
var sheet = ss.getActiveSheet();
sheet.appendRow(subject,date,body);
}
}
任何幫助,將不勝感激。
感謝 塞巴斯蒂安
這樣一個很好和詳細的解釋!我只是無法通過沒有給大拇指'pointNclick'! – Zongjun
@pointNclick,對不起舊線程。但無法幫助回覆....我有5000 +郵件(線程)在Gmail中的標籤。但上面的代碼只列出了524條消息到谷歌電子表格。調試模式下的Thread.length只顯示500.可能是什麼原因? – sifar786