Gmailには、Atomフィードを取得するためのすばらしい機能があります。
def gmail_url(user, pwd):
return "https://"+str(user)+":"+str(pwd)+"@gmail.google.com/gmail/feed/atom"
これをブラウザで行うと、認証されて転送されます。しかし、Pythonでは、少なくとも私が試していることは正しく機能していません。
url = gmail_url(settings.USER, settings.PASS)
print url
opener = urllib.FancyURLopener()
f = opener.open(url)
print f.read()
正しく転送する代わりに、これを実行します。
>>>
https://user:pass@gmail.google.com/gmail/feed/atom
Enter username for New mail feed at mail.google.com:
これは悪いです!ユーザー名とパスワードをもう一度入力する必要はありません!! Webブラウザーの場合と同じように、Pythonで自動転送して、すべてのBSがなくてもフィードの内容を取得できるようにするにはどうすればよいですか?