Pythonとurllib2を使用してGoogleAppengineにログインします。https://www.google.com/accounts/ClientLoginからAuthとSidを取得 しましたが、ヘッダーを追加しましたが、ログインしていないことを確認するだけです。
これが私のコードです(私は新しいPythonユーザーです、コードは非常に悪いでしょう..):
LOGIN_URL = 'https://www.google.com/accounts/ClientLogin'
EMAIL = 'XXXXX@gmail.com'
PASSWORD = 'XXXXX'
print "Your Google account:"
print EMAIL
print "Logging in..."
arequest = urllib2.Request(LOGIN_URL, urlencode({
'service': 'ah',
'Email': EMAIL,
'Passwd': PASSWORD,
}))
f = urllib2.urlopen(arequest)
lines = f.read().split()
auth = lines[2][5:]
sid = lines[0][4:]
print "Google Logged in"
#print auth and sid,and you will find the code above is right
brequest = urllib2.Request("https://appengine.google.com")
brequest.add_header('User-Agent', 'Here is Chrome's UA')
brequest.add_header('Content-Type', 'application/x-www-form-urlencoded')
brequest.add_header('Authorization', 'GoogleLogin auth=' + auth)
brequest.add_header('Cookie', 'SID=' + sid)
brequest.add_header('Referer', 'https://appengine.google.com/start')
print "Opening with Auth info..."
bresponse = urllib2.urlopen(brequest)
print bresponse.read()
#The output shows that I haven't logged in.
Firefoxでfirebugを使用してヘッダー情報を表示しましたが、Cookieは上記のsidだけではありませんでした。どうすればいいですか?次にパフォーマンスがログインする必要があります(私はそれを書いていません)、どのように書くべきですか?それは私のラップトップで昼食をとったので、urlfetchのようにappengiegのlibを使用しません。非常に感謝しています!