Google云端硬盘脚本不起作用,

时间:2014-05-03 15:09:10

标签: java javascript google-drive-api amazon

我发现在线google驱动器脚本会发送一封电子邮件,其中包含我插入的亚马逊产品价格的变化。 This is the file

我无法让它100%工作..它有时仅适用于某些产品,我找不到原因。 请帮我理解出了什么问题。

另外,我想知道我是否可以修改脚本,以便它每天发送两次警报,而不仅仅是一次,就像现在一样。

1 个答案:

答案 0 :(得分:0)

配置电子邮件通知间隔

电子邮件通知配置为调用priceEmail功能的Google Apps Scripts触发器。在初始化电子表格时会随机分配它们(请参阅Start_Tracking实施)。

手动配置电子邮件通知 - 例如添加第二封每日电子邮件 - 打开与电子表格关联的Copy of Amazon Price Tracker by ctrlq.org脚本(通过电子表格工具>脚本编辑器... 菜单命令)。然后继续打开触发器对话框(资源>当前项目的触发器菜单命令)并为priceEmail挂钩添加新的时间驱动触发器。

脚本错误

默认情况下,priceEmail函数以静默方式处理所有错误。没有太多线索会导致脚本在100%的时间内无法正常工作。如果您希望收到有关错误的通知,请删除当前实现中的异常处理或更新priceEmail正文。

我建议进行以下修改(再次通过电子表格工具>脚本编辑器...... 菜单命令):

function priceEmail() {

  var sheet, data, page, table="";

  sheet = SpreadsheetApp.getActiveSheet();
  data  = sheet.getRange(2, 2, 21, 2).getValues();  // Note that the script will only look at the first 20 rows.

  try {
    for (i in data) {      
      if (data[i][0] !== "") {
        page = UrlFetchApp.fetch(
          "http://ctrlq.org/aws/lookup/", {
            "method": "post", "payload": {"url":data[i][0]}
          }).getContentText();

        table = table + tableRow(page);                
      }     
    }
  } catch (e) {
    Logger.log(e.toString());
    // Following line inserted to include any error messages in your daily email(s).
    table += "<tr><td><strong>Error:</strong></td><td>" + e + " (url: \"" + data[i][0] + "\")</td></tr>";  
  }
  // ...