YardalGedal
@YardalGedal
yeah boy

Почему не отправляется запрос?

@staticmethod
    def wallpost(attach, post, token, cid):
        print(post)
        msg = ''
        msg = post['response']['1']['text']
        data = {"attach": str(attach), "token": str(token), "cid": str(cid), "message": str(msg)}
        r = requests.post("https://api.vk.com/method/wall.post", data=data)
        return r.json()

Получаю ошибку

Traceback (most recent call last):
File "main.py", line 22, in wallpost
msg = post['response']['1']['text']
TypeError: list indices must be integers, not str


В документации к requests можно найти следующий код:
>>> payload = {'key1': 'value1', 'key2': 'value2'}

>>> r = requests.post("http://httpbin.org/post", data=payload)
>>> print(r.text)

Который, судя по всему, должен работать. Тогда почему не срабатывает мой?
  • Вопрос задан
  • 353 просмотра
Решения вопроса 1
@deliro
Ошибки нужно уметь читать.
Написано же:
TypeError: list indices must be integers, not str


Это 5 строка.
Скорее всего, post['response'] - это список, а не словарь.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы