@MaxiZm

Хочу использовать Балабобу Яндекса в проекте Python, но как?

Испробовал несколько вариантов.

import json
import urllib.request

headers = {
    'Content-Type': 'application/json',
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 11_4) AppleWebKit/605.1.15 '
                  '(KHTML, like Gecko) Version/14.1.1 Safari/605.1.15',
    'Origin': 'https://yandex.ru',
    'Referer': 'https://yandex.ru/',
}


API_URL = 'https://zeapi.yandex.net/lab/api/yalm/text3'
payload = {"query": "Ура Хабр", "intro": 0, "filter": 1}
params = json.dumps(payload).encode('utf8')
req = urllib.request.Request(API_URL, data=params, headers=headers)
response = urllib.request.urlopen(req)
print(response.read().decode('utf8'))

Выдает такую вот строку:
{"bad_query":0,"error":0,"query":"\u0423\u0440\u0430 \u0425\u0430\u0431\u0440! ","text":"\u0412\u043e\u0442 \u0438 \u043d\u0430\u0441\u0442\u0430\u043b \u04
  • Вопрос задан
  • 216 просмотров
Решения вопроса 1
AlexNest
@AlexNest Куратор тега Python
Работаю с Python/Django
response_json =  JSON.loads(response.read().decode('utf8'))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alekssamos
Программист любитель
Да, у вас всё правильно. Только надо декодировать JSON.
import json
print( json.loads( response.read().decode('utf8') )["text"] )
# Вот и настал
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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