0

我编写了一个 python 脚本,每次点击它时都会自动登录到一个网站。该脚本在命令提示符下运行良好,但未打开浏览器。我可以看到 html 源代码在命令提示符下运行,但它没有打开浏览器。我也没有包含任何基于浏览器的命令,这可能是一个原因,但我不知道如何包含浏览器命令,例如:webbrowser.open,因为当我包含此命令时,它会简单地打开浏览器但不会让我登录。我估计有时间问题。有人可以更正我的自动登录脚本吗?

import cookielib
import urllib
import urllib2

if __name__ == '__main__':
    urlLogin = 'http://www.gmail.com'

    id    = 'my.email'
    passw = 'my.password'

    fieldId   = 'email'
    fieldPass = 'pass'

    cj = cookielib.CookieJar()
    data=   urllib.urlencode({fieldId:id, fieldPass:passw})

    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

    urllib2.install_opener(opener)

    usock = opener.open(urlLogin)
    usock = opener.open(urlLogin,  data)

    pageSource = usock.read()
    usock.close()
    print(pageSource)

    usock = opener.open('http://www.gmail.com')
    pageSource = usock.read()
    usock.close()
    print(pageSource)

谢谢,这将是一个很大的帮助

4

1 回答 1

1

AFAIK,urllib 与您的浏览器无关。相反,Python 成功地将自己连接到远程系统、登录并检索结果页面。

您可能需要 webbrowser,而不是 urllib。该模块的文档在这里:http ://docs.python.org/library/webbrowser.html

于 2011-04-14T01:40:26.597 回答