我有一封电子邮件,其中收到了 csv 文件的可下载链接。我不想将数据下载到我的电脑中,而是想将数据直接传输到Google Sheet。
有人对此有建议吗?
我尝试过,我能够从电子邮件中获取链接。
@Tanaike,请在下面找到脚本。
function extractAndUploadLinks() {
var spreadsheetId = '164BZRed9VfY5DxSLRv-FmGAnLNePdkvnewKpYAlPkCE'; // Replace with your Spreadsheet ID
var sheetName = 'Sheet1'; // Replace with the sheet name
var searchQuery = 'subject:Assign to Resolve Report'; // Replace with the desired subject
var threads = GmailApp.search(searchQuery);
var links = [];
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 body = message.getBody();
var extractedLinks = extractLinksFromBody(body);
Logger.log(extractedLinks);
var response = UrlFetchApp.fetch(extractedLinks);
Logger.log(response);
// links = links.concat(extractedLinks);
}
}
var spreadsheet = SpreadsheetApp.openById(spreadsheetId);
var sheet = spreadsheet.getSheetByName(sheetName);
var numRows = links.length;
if (numRows > 0) {
sheet.getRange(2, 1, numRows, 1).setValues(links.map(link => [link]));
}
}
function extractLinksFromBody(text) {
var regex = /https?:\/\/[^\s]+/g;
var matches = text.match(regex);
return matches || [];
}