Задать вопрос
@sidorikv

Почему не получается работать с while?

Всех приветствую.
Имеется вот такой код:

def account_worker(auth_data):

  response = 0
  session = requests.session()

  auth_link = 'some.site.ru'
  user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 
  Safari/537.36'

  headers = {
    'Accept': '*/*',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-language': 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Referer': 'some.site.ru',
    'sec-fetch-mode': 'navigate',
    'origin': 'some.site.ru',
    'sec-ch-ua': '"Google Chrome";v="93", " Not;A Brand";v="99", "Chromium";v="93"',
    'host': 'some.site.ru',
    'sec-ch-ua-platform': '"Windows"',
    'user-agent': user_agent,
    'sec-fetch-site': 'same-origin',
    'sec-fetch-site': 'same-origin',
    'sec-ch-ua-mobile': '?0',
    'sec-fetch-user': '?1',
    'upgrade-insecure-requests': '1',
    'sec-fetch-dest': 'document'
  }
  data = auth_data

  while response != 200:
    response = session.post(auth_link, data=data, headers=headers)
    print(response)


Вроде все очень просто. Сделать запрос, если получили ответ не 200, то продолжать делать запрос до тех пор, пока не получим ответ 200. Но почему то запрос делается лишь один рад. Помогите, уже перепробовал все

UPD: получаю запрос 504, все равно выполняется один раз
  • Вопрос задан
  • 79 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • ProductStar
    Профессия: Python-разработчик
    8 месяцев
    Далее
Решения вопроса 2
@galaxy
А кто вам сказал, что session.post() возвращает число?

https://docs.python-requests.org/en/latest/api/#re...
Ответ написан
zvepb
@zvepb
responce.code() вам нужен, если не ошибаюсь

метод должен возвращать код ответа в виде строки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы