Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 12, 2021 14:47:08

devz1k
Зарегистрирован: 2021-10-12
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

API

Привет всем. Есть такой ресурс ‘aiproject’, чат бот с api. В описании про api сказано: Тело запроса должно содержать параметр query, содержащий JSON с параметрами: ask - запрос к чат-боту (кодировка UTF-8), userid - идентификатор пользователя. Как это реализовать на питоне?
Делаю так

 data = {"query": {"ask": ask, "userid": userid}}
r = requests.post(url, data)
В ответ приходит: can not decode the query. Хелп

Отредактировано devz1k (Окт. 12, 2021 14:47:33)

Офлайн

#2 Окт. 12, 2021 14:54:21

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10015
Репутация: +  857  -
Профиль   Отправить e-mail  

API

Попробуй в ask поместить строку из английских букв. Если работает, то нужно файл исходного кода перевести в кодировку utf-8.



Офлайн

#3 Окт. 12, 2021 14:56:51

devz1k
Зарегистрирован: 2021-10-12
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

API

py.user.next
Попробуй в ask поместить строку из английских букв. Если работает, то нужно файл исходного кода перевести в кодировку utf-8.
Не помогло, к сожалению

Офлайн

#4 Окт. 12, 2021 15:37:18

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

API

devz1k
какая версия питона?



Офлайн

#5 Окт. 12, 2021 16:05:03

devz1k
Зарегистрирован: 2021-10-12
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

API

FishHook
devz1kкакая версия питона?
Версия 3.9

Офлайн

#6 Окт. 12, 2021 20:15:18

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1393
Репутация: +  124  -
Профиль   Отправить e-mail  

API

 import requests
import json
data = {"ask":"потанцуем","userid":"111122"}
headers = {'Content-Type':'application/x-www-form-urlencoded,'}
data_json = json.dumps(data,ensure_ascii=False)
print(data_json)
payload = {'query': data_json}
apiurl = "https://aiproject.ru/api/"
resp = requests.post(apiurl,data=payload, headers=headers)
answer = resp.json()
print(answer['aiml'].encode('iso-8859-1').decode('utf-8'))

 {"ask": "потанцуем", "userid": "111122"}
Танцую только за биточки:Р
Process finished with exit code 0

Офлайн

#7 Окт. 12, 2021 20:18:00

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1393
Репутация: +  124  -
Профиль   Отправить e-mail  

API

 {"ask": "Скажи по английски", "userid": "111122"}
по английски . Рад, сука?
Process finished with exit code 0

Офлайн

#8 Окт. 13, 2021 01:20:23

devz1k
Зарегистрирован: 2021-10-12
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

API

xam1816
Спасибо большое, работает!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version