0
任何人在Google腳本中遇到每分鐘腳本觸發都有問題?Google Script每分鐘觸發器
以下是爲單個視頻提取YT數據並寫入電子表格的功能,我們在發佈視頻時運行一小時。
每分鐘觸發器用於正常工作,現在它停止工作。
如果有人有任何想法,他們將受到歡迎!
function STATSScript() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
// var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Generator");
var sheets = ss.getSheets();
// if (sheets.length > 1) {
// Logger.log(sheets[0].getName());
// Logger.log(sheets[1].getName());
//Logger.log(sheets[2].getName());
// }
// var sheet = ss.getSheetByName("Generator"); //or whatever you name your sheet
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Generator");
var apiKey = 'KEY'; //leave the single quotes
var vidId = sheet.getRange("c3").getValue();
// Logger.log(ss);
var url = 'https://www.googleapis.com/youtube/v3/videos?id=' + vidId + '&key=' + apiKey + '&part=snippet,contentDetails,statistics,status'; // replace this with your API client ID
//take a look at the raw JSON for this request at https://www.googleapis.com/youtube/v3/videos?id=ID=snippet,contentDetails,statistics,status
var currentTime = new Date();
var response = UrlFetchApp.fetch(url); // get feed
var json = response.getContentText(); //
var data = JSON.parse(json);
// Logger.log(data);
var stats = [];
stats.push(data.items[0].snippet.title); //video title
// Logger.log(data.items[0].snippet.title);
stats.push(data.items[0].statistics.viewCount); //view count
stats.push(data.items[0].statistics.likeCount); //like count
stats.push(data.items[0].statistics.dislikeCount); //dislike count
stats.push(data.items[0].statistics.commentCount); //comment count
stats.push(data.items[0].snippet.publishedAt); //publish date
stats.push(data.items[0].snippet.channelTitle); //title of the channel or user
stats.push("https://www.youtube.com/watch?v="+vidId); //link
stats.push(currentTime); //time script ran
SpreadsheetApp.getActiveSheet().appendRow(stats)
Logger.log(stats);
Logger.log("Row Data Written");
}
// -----------------------------------------------------------------------------
// function to clear data
// -----------------------------------------------------------------------------
function clearData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Generator');
sheet.getRange("A2:A3").clearContent();
// clear out the matches and output sheets
var lastRow = sheet.getLastRow();
if (lastRow > 1) {
sheet.getRange(5,1,lastRow-1,9).clearContent();
}
Logger.log("Data Cleared");
}
function archiveSheet() {
//Archive the Sheet
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheets = ss.getSheets();
var lastrow = sheet.getLastRow();
var range = sheet.getRange('A1:N' + (lastrow) + '');
var date = new Date();
var formattedDate = Utilities.formatDate(date, "CST", "MM-dd-yy")
var titleofvid = ss.getRange("a3").getValue();
var titlefilename = formattedDate+' '+titleofvid;
sheet.setNamedRange('Archive', range);
var TestRange = sheet.getRangeByName('Archive').getValues();
Logger.log(TestRange);
var destFolder = DriveApp.getFolderById('ID');
DriveApp.getFileById(sheet.getId()).makeCopy(titlefilename, destFolder);
}
function cloneGoogleSheet() {
var source = SpreadsheetApp.getActiveSpreadsheet();
var sheet = source.getSheets()[0];
var destination = SpreadsheetApp.openById('ID');
sheet.copyTo(destination);
}
歡迎您訪問解決方案的鏈接,但請確保您的答案在沒有它的情況下很有用:[在鏈接附近添加上下文](// meta.stackexchange.com/a/8259),以便您的同行用戶瞭解什麼它是,爲什麼它在那裏,然後引用您鏈接到的頁面最相關的部分,以防目標頁面不可用。 [僅僅是一個鏈接的答案可能會被刪除。](// stackoverflow.com/help/deleted-answers) – Bugs