【问题标题】:How to populate adwords data in specific cells of a google docs spreadsheet using AdWords Scripts?如何使用 AdWords 脚本在 google docs 电子表格的特定单元格中填充 adwords 数据?
【发布时间】:2013-04-17 20:18:08
【问题描述】:

我没有编程背景,刚开始学习 JavaScript 基础知识,因此我可以熟练地创建自定义 Google AdWords 脚本来帮助我自动生成客户报告。我花了很多时间反复试验,但还没有弄清楚这个问题(这对程序员来说可能超级容易):

我正在尝试使用帐户级别数据填充我制作的电子表格(这里是缩短的链接:http://goo.gl/wLAAx),以便计算帐户的运行率。我要做的只是运行一个每天早上运行的脚本,该脚本将在电子表格中添加一个包含昨天日期的新行,并填充其各自的数据,例如点击次数、展示次数、费用和转化次数。

提前感谢您的帮助和信息!

【问题讨论】:

  • 建议你多做一些功课,有的时候再贴一些代码。

标签: google-apps-script google-sheets google-ads-api


【解决方案1】:

这是一个可以执行您想要的操作的脚本(它使用的电子表格略有不同,请查看)。此外,该脚本仅读取电子表格的前 365 行,因此它会在一年内中断。

将来,您可能想与https://developers.google.com/adwords/scripts 联系以获取面向脚本的资源和社区

function main() {
  var sheet = SpreadsheetApp.openByUrl(
    "https://docs.google.com/spreadsheet/ccc?key=0Aj_Bw31w9s7LdEdLMllQMnZfbW52c3BvcTh0ekVBQ3c#gid=0").getActiveSheet();
  var emptyRow = findEmptyRow(sheet);

  var yesterday = new Date(new Date().getTime() - (24 * 3600 * 1000));

  var range = sheet.getRange(emptyRow + 1, 1, 1, 10);

  var row = range.getValues();
  row[0][0] = yesterday;
  row[0][1] = MONTHS[yesterday.getMonth()];
  row[0][2] = DAYS_OF_WEEK[yesterday.getDay()];

  var stats = AdWordsApp.report("SELECT Clicks, Impressions, Cost, Conversions " +
    "FROM ACCOUNT_PERFORMANCE_REPORT DURING YESTERDAY")
    .rows()
    .next();
  row[0][3] = stats["Clicks"];
  row[0][4] = stats["Impressions"];
  row[0][7] = stats["Cost"];
  row[0][8] = stats["Conversions"];
  range.setValues(row);
}

function findEmptyRow(sheet) {
  var dates = sheet.getRange(1, 1, 365, 1).getValues();
  for (var emptyDate = 0; emptyDate < dates.length; emptyDate ++) {
    if (dates[emptyDate][0].length == 0) {
      return emptyDate;
    }
  }
}

【讨论】:

    猜你喜欢
    • 2016-03-21
    • 1970-01-01
    • 2014-05-29
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 2012-09-07
    • 2013-04-04
    • 1970-01-01
    相关资源
    最近更新 更多