我正在尝试连接到报告 api 以获取有关域用户电子邮件使用百分比的一些数据。我想每天将其作为一项 cron 工作来完成,因此我需要一些方法来自动验证为域的管理员,而无需任何管理员交互。
现在我正在使用管理员密码并像这样登录
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')
但我不想存储管理员的密码。我曾尝试使用 Oatuh 2.0,但似乎我总是需要管理员的交互。
有没有办法使用 consumer_key 和 consumer_secret 来做到这一点?或任何其他选择?
谢谢!