Вход в систему с использованием запросов Python не работает для pythonanywhere.com - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь войти на сайт pythonanywhere.com

import requests

url='https://www.pythonanywhere.com/login'

s = requests.session()

values = {
    'auth-username': 'username', 
    'auth-password': 'password'}

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}

u = s.post(url, data=values, headers=headers)

Но я получаю <Response [403]>, проверка Csrf не удалась.Как мне войти на этот сайт?

1 Ответ

0 голосов
/ 30 сентября 2018

Сначала вам нужно get. Так что вы можете получить crsftoken и sessionid. И не забудьте установить Referer=https://www.pythonanywhere.com/login/

import requests

url='https://www.pythonanywhere.com/login'

s = requests.session()
s.get(url)

values = {
    'auth-username': 'username', 
    'auth-password': 'password',
    "csrfmiddlewaretoken" : s.cookies.get("csrftoken"),
    "login_view-current_step" : "auth"
    }

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.92 Safari/537.36',
            'Referer': 'https://www.pythonanywhere.com/login/'}

u = s.post(url, data=values, headers=headers)
print(u.content)
...