Почему сайт не отвечает на пост. Запросы? - PullRequest
0 голосов
/ 23 апреля 2020

Внимание! Я не из Engli sh и спрашиваю об Eng Stack, потому что в Stack моего округа все игнорируют меня

У меня есть код, который будет отправлять запрос на сайт для добавления группы сообщества в список, но после авторизации с их API и отправкой запросов сайт отвечает своим кодом '200', но ничего не меняется, кто-нибудь знает, как это изменить?

header = {
    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) snap Chromium/81.0.4044.113 Chrome/81.0.4044.113 Safari/537.36"
}

with requests.Session() as s: # authorization by sute API
    response = s.get(f'http://likest.ru/api/users.login?authname={vk_id}')
    print(f'Для авторзиациия вам необходимо поставить отметку "лайк" на фото: {response.json()["like_like"]}') # for autorization u need to like this photo
    ender = input('Нажмите [ENTER]') # Press [ENTER]
    response = s.get(f'http://likest.ru/api/users.login?authname={vk_id}&like_id={response.json()["like_id"]}')
    print(response.json()['status'])
    for link in data_selected: # send request
        requests = s.post('https://likest.ru/groups/add',
                          headers=header,
                          data={
                              "link": link,
                              "reward": reward,
                              "amount": amount,
                              'sex': '0',
                              'country': "0",
                              'age_min': "0",
                              'age_max': "255",
                              'friends_min': "0",
                              "lim_5": lim_5,
                              "lim_30": lim_30,
                              "lim_60": lim_60,
                              'sleepy_factor': "0",
                              '_triggering_element_name': "op",
                              '_triggering_element_value': "С+правилами+согласен,+заказать"
                          },
                          )

1 Ответ

0 голосов
/ 23 апреля 2020

Поскольку вы обрабатываете сеанс вручную, вы создаете запросы с помощью запросов. Запросите и подготовьте их перед отправкой через сеанс. Вот пример

r = requests.Request("POST",f'http://likest.ru/api/users.login?authname={vk_id}&like_id={response.json()["like_id"]}')

req = r.prepare()
#spawn sesssion
s = requests.Session()
s.send(req)

Вы также можете просто использовать вместо этого request.get / запросы.post

#equivalent to my above example
r = requests.post(f'http://likest.ru/api/users.login?authname={vk_id}&like_id={response.json()["like_id"]}')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...