Python---模拟登陆GitHub

import pytesseract
import requests
import ssl
import time

class Login2(object):
    def __init__(self):
        self.headers = {'Referer': 'https://github.com/login',
                         'Host': 'github.com',
                         'User - Agent': 'Mozilla / 5.0(Windows NT 10.0;Win64;x64;rv: 60.0) Gecko / 20100101Firefox / 60.0'
                        }
        self.login_url = 'https://github.com/login'
        self.post_url = 'https://github.com/session'
        self.session = requests.session()

    def login(self, token):
        post_data = {
            'authenticity_token': token,
            'commit': 'Sign+in',
            'login': '***********',
            'password': '***********',
            'utf8': '✓'
        }
        response = self.session.post(self.post_url, data=post_data)
        print(response.text)

    def gettoken(self):
        response = self.session.get(self.login_url)
        selector = etree.HTML(response.text)
        # print(response.text)
        token = selector.xpath('//div//input[@name="authenticity_token"]/@value')[0]
        print(token)
        return token
if __name__ == "__main__":
        ssl._create_default_https_context = ssl._create_unverified_context
        login = Login2()
        token = login.gettoken()
        login.login(token)

猜你喜欢

转载自blog.csdn.net/ustcyy91/article/details/80287334