Войти в Google с помощью Python? - PullRequest
15 голосов
/ 20 июля 2011

Я довольно новичок в веб-программировании, но ради этого я пытаюсь войти в учетную запись Google, не используя стандартный код, а как приложение на Python, но это невозможно сделать кто-нибудь пробовал это раньше? кто-нибудь может помочь?

Ответы [ 3 ]

22 голосов
/ 22 июля 2014

Я создал класс Python, который обрабатывает вход в Google и может получить любую страницу службы Google, требующую входа пользователя в систему:

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

Идея состоит в том, чтобы перейти на страницу входа в систему GALXскрытое значение ввода и отправить его обратно в Google + логин и пароль.Требуются модули requests и beautifulSoup

Пример использования:

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")

Надеюсь, это поможет

1 голос
/ 20 июля 2011

Хотя, возможно, не совсем то, что вы искали здесь, я нашел код из похожей записи , которая действительно работала у меня.

<code>
import urllib2</p>

<p>def get_unread_msgs(user, passwd):
    auth_handler = urllib2.HTTPBasicAuthHandler()
    auth_handler.add_password(
        realm='New mail feed',
        uri='<a href="https://mail.google.com" rel="nofollow noreferrer">https://mail.google.com</a>',
        user='%s@gmail.com' % user,
        passwd=passwd
    )
    opener = urllib2.build_opener(auth_handler)
    urllib2.install_opener(opener)
    feed = urllib2.urlopen('<a href="https://mail.google.com/mail/feed/atom" rel="nofollow noreferrer">https://mail.google.com/mail/feed/atom</a>')
    return feed.read()</p>

<p>print get_unread_msgs("put-username-here","put-password-here")

ссылка:
Как автоматически войти в Gmail Atom Feed с Python?

0 голосов
/ 29 ноября 2016

Вы можете использовать библиотеки pyll urllib, urllib2 и cookielib для входа в систему.

import urllib, urllib2, cookielib

def test_login():
    username = '' # Gmail Address
    password = '' # Gmail Password
    cookie_jar = cookielib.CookieJar() 
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie_jar)) 
    login_dict = urllib.urlencode({'username' : username, 'password' :password}) 
    opener.open('https://accounts.google.com/ServiceLogin', login_dict) 
    response = opener.open('https://plus.google.com/explore')
    print response.read()

if __name__ == '__main__':
    test_login()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...