使用Google Apps Script 实现定时自动访问URL
我们可以使用Google Apps Script 实现定时自动访问URL。
Apps Script官网:https://script.google.com/
第一步
在编辑器中输入以下代码:
function scheduledUrlFetch() {
// 需要访问的网页链接
var url = "https://www.abc.com"; // 替换成你的URL
// 打开Google Sheets表格
var sheet = SpreadsheetApp.openById("1-YnPomgmgp3v6-_PC4PqpVJSdH4KjjZHMykeBo5").getActiveSheet(); // 替换成你的Google Sheets ID,在url链接中能看到
var currentTime = new Date(); // 记录当前时间
try {
// 发送GET请求访问网页
var response = UrlFetchApp.fetch(url);
// 获取响应状态码和部分响应内容
var statusCode = response.getResponseCode();
var contentSnippet = response.getContentText().substring(0, 80); // 只截取前80个字符
// 将结果写入Google Sheets,放入新的一行
sheet.appendRow([new Date(), url, statusCode, contentSnippet]);
// 停留180秒(180秒 = 180 * 1000 毫秒)
Utilities.sleep(180 * 1000); // 180秒 = 180 * 1000 毫秒
// 写入完成180秒停留的日志
sheet.appendRow([new Date(), url, "完成 180 秒訪問", ""]);
} catch (error) {
// 捕捉请求失败或其他错误
sheet.appendRow([new Date(), url, "Error: " + error.message, ""]);
}
}
Google Sheets ID 在 URL中能看到
https://docs.google.com/spreadsheets/d/1-YnPomgmgp3v6-_PC4PqpVJSdH4KjjZHMykeBo5/
其中 1-YnPomgmgp3v6-_PC4PqpVJSdH4KjjZHMykeBo5 就是Google Sheets ID
第二步
设置定时触发器
● 在 Google Apps Script 编辑器中,点击左侧的“触发器”(时钟图标)。
● 在右下角,点击“添加触发器”。
● 在“选择要运行的函数”下拉菜单中,选择 scheduledUrlFetch(或您修改后的函数名称)。
● 在“选择事件源”下拉菜单中,选择“时间驱动”。
● 在“选择时间驱动的类型”下拉菜单中,选择“日期计时器”。
● 在“选择特定的时间”下拉菜单中,选择“自定义”。
● 在“重复间隔”中,选择“每天”。
● 在“时间”文本框中,输入以下时间(每个时间段添加一个触发器):
○ 01:00:00
○ 07:00:00
○ 13:00:00
○ 19:00:00
○ 23:00:00
● 点击“保存”。
● 重复上述步骤,为每个时间段创建一个触发器。
第三步
授权 Google Apps Script
首次设置触发器时,系统会要求您授权 Google Apps Script 访问您的 Google 账户。请按照提示进行授权。
注意事项
● Google Apps Script 的触发器可能会有一定的延迟,因此实际执行时间可能会与您设置的时间略有偏差。
● 如果您的脚本运行时间过长(超过 6 分钟),可能会导致触发器失败。请确保您的脚本能够在限制时间内完成。
● 如果您的 Google Sheets 表格非常大,写入操作可能会比较耗时,请注意脚本的运行时间。
● 如果脚本出现任何的异常,Google会发送邮件到你google账号的邮箱中,请注意查看。
通过以上步骤,您就可以实现每天在指定时间自动访问 URL 并将结果记录到 Google Sheets 表格中。
