使用python登录谷歌?

Mir*_*ash 16 python login

我对网络编程相当新,但为了它,我试图登录谷歌帐户不使用标准代码,但作为一个python应用程序,但这是不可能这样做有任何人尝试过这个吗?有人可以帮忙吗?

ale*_*slg 23

我创建了一个处理谷歌登录的python类,并且能够获得要求用户登录的任何谷歌服务页面:

class SessionGoogle:
    def __init__(self, url_login, url_auth, login, pwd):
        self.ses = requests.session()
        login_html = self.ses.get(url_login)
        soup_login = BeautifulSoup(login_html.content).find('form').find_all('input')
        my_dict = {}
        for u in soup_login:
            if u.has_attr('value'):
                my_dict[u['name']] = u['value']
        # override the inputs without login and pwd:
        my_dict['Email'] = login
        my_dict['Passwd'] = pwd
        self.ses.post(url_auth, data=my_dict)

    def get(self, URL):
        return self.ses.get(URL).text
Run Code Online (Sandbox Code Playgroud)

想法是转到登录页面GALX隐藏输入值并将其发送回谷歌+登录名和密码.它需要模块requestsbeautifulSoup

使用示例:

url_login = "https://accounts.google.com/ServiceLogin"
url_auth = "https://accounts.google.com/ServiceLoginAuth"
session = SessionGoogle(url_login, url_auth, "myGoogleLogin", "myPassword")
print session.get("http://plus.google.com")
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助


dkr*_*roy 1

虽然可能不完全是您在这里寻找的内容,但我从我运行的类似帖子中找到了一些代码。


import urllib2

def get_unread_msgs(user, passwd): auth_handler = urllib2.HTTPBasicAuthHandler() auth_handler.add_password( realm='New mail feed', uri='https://mail.google.com', user='%s@gmail.com' % user, passwd=passwd ) opener = urllib2.build_opener(auth_handler) urllib2.install_opener(opener) feed = urllib2.urlopen('https://mail.google.com/mail/feed/atom') return feed.read()

print get_unread_msgs("put-username-here","put-password-here")

Run Code Online (Sandbox Code Playgroud)

参考:
如何使用Python自动登录gmail Atom feed?