使用Python中的mechanize登录Yahoo,然后重定向到另一个站点

时间:2015-01-13 15:46:58

标签: python mechanize mechanize-python

所以我准备好了这个Python脚本,能够从网站中提取与我的兴趣有关的某些信息。没什么大不了的,只是礼貌地从网站上提取一些内容。

但是,我面临的问题是,该网站需要您首先使用Google,Yahoo或Facebook帐户登录。所以它是这样的:你访问网站,你试图'搜索',它重定向你使用3种方法之一登录。如果我选择雅虎,它会打开一个新的小窗口,我将其带到雅虎登录页面。登录后,这个小窗口关闭,网站被重定向到“登录”状态。然后,我可以搜索内容。

到目前为止,我有这段代码:

#!/usr/bin/python

import re
import mechanize

br = mechanize.Browser()
br.set_handle_robots(False)
br.addheaders = [('User-agent', 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US;     rv:1.9.0.6')]
br.set_handle_robots(False)

response = br.open("https://login.yahoo.com/config/login?.intl=us&.src=openid&.partner=&.pd=c%3DmZmAFpe.2e7WuWzcHD2ZPYQ-%26ockey%3Dwww.truecaller.com%26op%3D1.&occrumb=WJkaVqkbAY.&.done=https%3A%2F%2Fopen.login.yahoo.com%2Fopenid%2Fop%2Fstart%3Fz%3DQ4oGKMkwehm3_lS0mMkG_vmEWIdTDxMFLsN4yAu3CTi7kdZwRxb1m4XQ4T3uNWkbrzy2cTKNIkoVr6rQfYbaVpJInQ5xwjPJ9L.wUuUBDadBNY2QeTdAfZxFbkz97JGHrUccJFAr8EqOe46s7DrfIhfT2vz66w7Pu7C0uOLe2I9vUpoqnZrbNhGaJk.XSc0AvpE1lGi_YSZHFF1iNFOrXO69JNifMOgHYBHFnRaZAzfpZ8FgAM.ohZd0jv6BEMcBE__7Om2KZmbylufiOZPgvikDySub1fYOQBF6UlKDoIaxKwK8lUD8jiCtoGE4vJFqsZknSw--%26.scrumb%3D0")

#assert br.viewing_html()
print response.get_data()
br.select_form(nr=0)

br["username"] = 'name'
br["passwd"] = 'pass'

response = br.submit()
print response.get_data()

我不知道从哪里开始。如何成功重定向到登录状态的其他网站以进行查询?

0 个答案:

没有答案