Python 2.7.5 と mechanizeライブラリを使用して、 bing.comの Microsoft アカウントにログインするプログラムを作成しようとしています。最初に、この Web ページのフォームの名前を出力するプログラムを作成しました。これにより、後のコードでそれらを参照できるようになります。私の現在のコードはこれです(長いURLについて申し訳ありません):
import mechanize
br = mechanize.Browser()
br.set_handle_robots(False)
br.addheaders = [('User-agent','Firefox')]
br.open("https://login.live.com/ppsecure/post.srf?wa=wsignin1.0&rpsnv=11&ct=1375231095&rver=6.0.5286.0&wp=MBI&wreply=http:<%2F%2Fwww.bing.com%2FPassport.aspx%3Frequrl%3Dhttp%253a%252f%252fwww.bing.com%252f&lc=1033&id=264960&bk=1375231423")
print(br.title)
forms_printed = 0
for form in br.forms():
print form
forms_printed += 1
if forms_printed == 0:
print "No forms to print!"
Firefox で Web ページにアクセスすると、ユーザー名とパスワードのフォームが表示されますが、このコードを実行すると、常に「印刷するフォームがありません!」という結果になります。ここで mechanize を間違って使用していますか、それとも Web サイトが意図的にそれらのフォームを見つけられないようにしているのでしょうか? ヒントやアドバイスは大歓迎です。