如何将AWS lambda连接到google adx卖家

时间:2017-05-15 16:53:57

标签: python amazon-web-services aws-lambda

我有一个用于获取Google Adx卖家交换信息的API。我的问题是我想把它放到一个AWS lambda中,每天自动播种一个数据库,事情是访问令牌过期,一旦它过期,那么我将无法访问api。我不能让我的客户不断重新登录,以便他们继续获取adx信息。任何关于我能做什么的建议都将不胜感激。我包括我使用的脚本,但这真的不重要我不相信。

import sys

from apiclient import sample_tools
from oauth2client import client


def main(argv):
 # Authenticate and construct service.
 service, _ = sample_tools.init(
  argv, 'adexchangeseller', 'v2.0', __doc__, __file__,
  scope='https://www.googleapis.com/auth/adexchange.seller.readonly')

try:
# Retrieve report.
result = service.accounts().reports().generate(
    accountId='myaccount',
    startDate='today-6d', endDate='today',
    metric=['AD_REQUESTS', 'CLICKS'],
    dimension=['DATE', 'WINNING_BID_RULE_NAME'],
    sort=['+DATE']).execute()

# Display headers.
for header in result['headers']:
  print '%25s' % header['name'],
print

# Display results.
for row in result['rows']:
  for column in row:
    print '%25s' % column,
  print

# Display totals
for total in result['totals']:
  print '%25s' % total,
print

except client.AccessTokenRefreshError:
  print ('The credentials have been revoked or expired, please re-run 
 the '
       'application to re-authorize')


if __name__ == '__main__':
  main(sys.argv)

我也是python的新手。所以这似乎也是我们想要的。但我正在等待客户端Adx凭据,所以不是100%肯定。我只想知道如何绕过令牌到期,或者有人有建议。

1 个答案:

答案 0 :(得分:0)

使用google-api-python-client

使用Google的API执行服务器到服务器的互动时,请使用Service Account Authentication,这意味着您无需刷新令牌。

Here是有关如何正确设置的指南。