0
파이썬 3을 사용하고 있는데 파이썬 요청을 사용하여 https://competitions.codalab.org/accounts/login/에 로그인해야합니다.파이썬 요청 csrf로 웹 사이트에 로그인
이것은 내 예제 코드입니다.
# -*- coding: utf-8 -*-
import requests
url_open = 'https://competitions.codalab.org/accounts/login'
sess = requests.Session()
sess.verify = False
sess.headers = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, sdch, br',
'Accept-Language': 'zh-CN,zh;q=0.8',
'Cache-Control': 'max-age=0',
'Connection': 'keep-alive',
'Host': 'competitions.codalab.org',
'Referer': 'https',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 '
'(KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'}
page = sess.get(url_open)
csrfToken = page.cookies['csrftoken']
print(csrfToken)
usrname = ***
passwd = ***
form_data = {
'csrfmiddlewaretoken': csrfToken,
'login': usrname,
'password': passwd,
}
req = sess.post(url_open, data=form_data, cookies={
'csrftoken': csrfToken
})
print(req.text)
나는 먼저 csrf를 얻습니다. 그러나이 코드는 codalab에 로그인하지 못했습니다. 누구나 그 이유를 말해 줄 수 있습니까?
와 함께 작동합니다. 하지만 아직도 csrf 오류가 발생했습니다. 이유가 무엇입니까? – chenfei
https://competitions.codalab.org/accounts/login/이 csrf를 게시 할 때 csrf를 변경하지만 웹 사이트에서 js 코드를 찾을 수없는 것으로 나타났습니다. – chenfei