简单使用python(python3.7)模拟登陆github

# !/usr/bin/env python
# -*-coding:utf-8-*-
\"\"\"
@Author  : xiaofeng
@Time    : 2018/12/18 16:31
@Desc : Less interests,More interest. (模拟登陆github)
@Project : python_appliction
@FileName: github.py
@Software: PyCharm
@Blog    :https://blog.csdn.net/zwx19921215
\"\"\"

import bs4
import requests

# 声明头信息
headers = {
    \'User-Agent\': \'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X  Sr 1.0\'
}

login_url = \'https://github.com/login\'
login_post = \'https://github.com/session\'
session = requests.session()

\"\"\"
获取authenticity_token
\"\"\"


def get_token():
    response = session.get(url=login_url, headers=headers)
    soup = bs4.BeautifulSoup(response.text, \'html.parser\')
    # xx = soup.find(\'input\', {\'id\': \'xxx\'}).get(\'value\')
    token = soup.find(\'input\', {\'name\': \'authenticity_token\'}).get(\'value\')
    print(token)
    return token


\"\"\"
模拟登陆
\"\"\"


def sign_in(username, password):
    form_data = {
        \'commit\': \'Sign in\',
        \'utf8\': \'✓\',
        \'authenticity_token\': get_token(),
        \'login\': username,
        \'password\': password
    }

    response = session.post(url=login_post, data=form_data, headers=headers)
    if response.status_code == 200:
        print(\"congratulations login success ^_^\")
        print(response.text)


if __name__ == \'__main__\':
    sign_in(\'username\', \'password\')

 

\"\"

收藏 打印