day01自動的にgithubのをログに記録

1は、トークンランダムな文字列を取得し
、「『』
ランダムな文字列トークン取得アクセスするために、ログイン画面を1 
    リクエストURLを:
    
    要求メソッド:
        GET 
    :要求ヘッダ
        クッキー
        USER_AGENT:
2、トークン文字列解析し、抽出
#正規
の<input type =」隠さを"名前=" authenticity_token "値="(。*?) "/> 
" "" 
インポート要求
 のインポートを再

LOGIN_URL = ' https://github.com/login ' 
リクエストヘッダのログインページ 
login_header = {
     ' USER_AGENTを'Mozillaの/ 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(KHTML、Gecko)クローム/ 73.0.3683.86サファリ/ 537.36のような' 
} 
login_res = requests.get(URL = LOGIN_URL、ヘッダー= login_header)
 #1 プリント(login_res.text) 

解析提取トークン字符串 
authenticity_token = re.findall(
     ' の<input type = "隠れた"名前"はauthenticity_token" =値= "(。*?)" /> " 
    login_res.text、
    re.S 
)[0] 
プリント(authenticity_token)
获取ログイン页面の的クッキー信息の
印刷(タイプ(login_res.cookies))
 プリント(タイプ(login_res.cookies。 get_dict()))
login_cookies = login_res.cookies.get_dict() 

2、开始登陆githubの
""」"
ポスト要求自動ログインgithubの:
    リクエストURL:
        http://github.com/sessionの
    要求方法:
        ポスト
    リクエストヘッダ:
        クッキー
        User--エージェント:Mozillaの/ 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリなど)クローム/73.0.3683.86サファリ/ 537.36 
    リクエストボディ:
        コミット:ログイン
        UTF8:✓ 
        authenticity_token:MBlkk / dibjj0nhvrHc02Q2hK5xP3gKg / TaaaAObXGYqsL4Hl8OubDPzrgF9cTWNNp6cxrd0WmmUl77yur0aY / A == 
        ログイン:jiangbaoyaboの
        パスワード:************ 
        webauthn-サポート:サポートされています

"" " 
セッションのログインURLの 
session_url = ' https://github.com/session '
session_headers = {
     ' のUser-Agent '' のMozilla / 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(ヤモリ様KHTML)クローム/ 73.0.3683.86サファリ/ 537.36 ' 
     } 
请求体信息 
form_data = {
     " コミット"" サインイン" " UTF8 "" " " authenticity_tokenを" :authenticity_tokenは、
     " ログイン""jiangbaoyabo " パスワード""*********** " " webauthn-サポート"" サポート" 
} 
session_res = requests.post(URL = session_url、
                            ヘッダ = session_headers、
                            クッキー = login_cookies、
                            データ = form_data)
オープン(と' github.html '' W '、エンコード= ' UTF-8 ' Fとして):
    f.write(session_res.text)

 

おすすめ

転載: www.cnblogs.com/jiangbaoyabo/p/11117947.html