使用cron作业报告API-Google应用程序引擎python
我正在尝试连接到reporting api,以获取一些域用户电子邮件使用率的数据。我想每天把它作为一个cron工作来做,所以我需要一些方法来认证为域的管理员,而不需要任何管理员交互 现在我使用管理员密码和如下登录使用cron作业报告API-Google应用程序引擎python,python,google-app-engine,google-reporting-api,Python,Google App Engine,Google Reporting Api,我正在尝试连接到reporting api,以获取一些域用户电子邮件使用率的数据。我想每天把它作为一个cron工作来做,所以我需要一些方法来认证为域的管理员,而不需要任何管理员交互 现在我使用管理员密码和如下登录 url = 'https://www.google.com/hosted/services/v1.0/reports/ReportingData' url_login='https://www.google.com/accounts/Clientlogin' auth_reques
url = 'https://www.google.com/hosted/services/v1.0/reports/ReportingData'
url_login='https://www.google.com/accounts/Clientlogin'
auth_request = urllib.urlencode({'accountType': 'HOSTED','Email': _ADMIN,'Passwd': _PASSW})
login = doPost(url_login, auth_request)
for line in login.split('\n'):
array = line.split('=',2)
if array[0]=='SID':
token = array[1]
_REQUEST_TEMPLATE = ('<?xml version="1.0" encoding="UTF-8"?>\n'
'<rest xmlns="google:accounts:rest:protocol"\n'
'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n'
' <type>%(type)s</type>\n'
' <token>%(token)s</token>\n'
' <domain>%(domain)s</domain>\n'
' <date>%(date)s</date>\n'
' <reportType>daily</reportType>\n'
' <reportName>%(reportName)s</reportName>\n'
'</rest>\n')
url='1〕https://www.google.com/hosted/services/v1.0/reports/ReportingData'
url\u登录名https://www.google.com/accounts/Clientlogin'
auth_request=urllib.urlencode({'accountType':'HOSTED','Email':_ADMIN,'Passwd':_PASSW})
login=doPost(url\u登录、身份验证请求)
对于login.split('\n')中的行:
数组=行。拆分('=',2)
如果数组[0]=“SID”:
令牌=数组[1]
_请求\u模板=('\n'
“\n”
“%(类型)s\n”
“%(令牌)s\n”
“%(域)s\n”
“%(日期)s\n”
“每日\n”
“%(报告名)s\n”
“\n”)
但是我不想存储管理员的密码。我曾尝试使用Oatuh 2.0,但似乎我总是需要管理员的交互
是否有任何方法可以使用consumer\u key和consumer\u secret进行此操作??或者其他选择
谢谢 您必须将身份验证要素存储在某个位置—无论是ssl证书授权、cookie授权还是用户/通行证凭据—它们始终必须可供将要使用它们的scpript/程序使用。如果您不想将它们存储在脚本本身中,您可能希望将它们存储在配置文件中,并使脚本从那里读取它们,存储在变量中,并根据需要使用它们。您甚至可以将它们存储在数据库中,但是您必须存储数据库凭据,等等。而且使用使用者密钥和使用者机密是没有办法的??当然,把它们放在某个地方