#トークンランダムな文字列を取得します。
' ''
1.アクセスログインページランダムな文字列トークンの取得
:リクエストURL
http://github.com/login
リクエストメソッド:
GETの
リクエストヘッダ:
クッキー
User--エージェント:Mozillaの/ 5.0(Windows NTの10.0; WOW64)のAppleWebKitを/ 537.36 (ヤモリのようにKHTML、)クローム/ 63.0.3239.132サファリ/ 537.36
2.解析およびトークン文字列の抽出
定期的に#を
<タイプ= "隠された"名前のINPUTは= "authenticity_token"値= "(。*?)" />
'' '
インポート要求が インポート 再 LOGIN_URL = 「https://github.com/login 」
リクエストヘッダ#loginページ
login_header = { ' のUser-Agent ':' のMozilla / 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリ等)クローム/ 63.0.3239.132サファリ/ 537.36 ' }
login_res = requests.get(URL = LOGIN_URL、ヘッダ= login_header)
#print(login_res.text)
#解析はトークン文字列を抽出しました
authenticity_token = re.findall( ' <INPUT TYPE = "隠れた" NAME = "authenticity_token"値= "(。*?)" /> ' 、 login_res.text、 re.S )[0] プリント(authenticity_token)
#クッキーは、情報のログインページを取得します
#1 プリント(login_res.cookies) login_cookies = login_res.cookies.get_dict()
#2。はgithubの着陸開始しました。
session_url = ' http://github.com/session '
#リクエストヘッダ
session_headers = { ' のUser-Agent ':' のMozilla / 5.0(Windows NTの10.0; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリ等)クローム/ 63.0.3239.132サファリ/ 537.36 ' }
'' '
POSTリクエスト自動ログインgithubのを:
URLを要求:
http://github.com/session
リクエストメソッド:
POSTの
リクエストヘッダ:
クッキー
のUser-Agent
リクエストボディ:
コミット:ログイン
UTF8:✓
authenticity_token:FLmfwPWcFB / gy50Y3lUfZduoWrRtTF9eWiAYWKwjlY9M4nFs9SvvqX3qQ / n1wJiaI5Blp1lHT7qe9m / == kofrgcw
ログイン:
パスワード:
webauthn-サポート:サポートされていません
'' '
# - 情報要求
form_data = { " コミット":" サインイン" 、 " UTF8 ":" ✓ " 、 " authenticity_token " :authenticity_token、 " ログイン":" lzc01021033 " 、 " パスワード":" lzc199901021033を" 、 " webauthn支援":"サポートされていない" } session_res= requests.post(URL = session_url、 ヘッダー = session_headers、 クッキー = login_cookies、 データ = form_data) (オープンと' github3.html '、' W '、符号化= ' UTF-8 ' Fとして): f.write(session_res 。テキスト)