Size: a a a

2021 October 15

Д☆

Дурак из фильма ☆★... in SPb Python
b'{"bad_query":0,"error":0,"query":"\\u00d0\\u00bc\\u00d0\\u00be\\u00d1\\u0080\\u00d0\\u00b3\\u00d0\\u00b5\\u00d0\\u00bd\\u00d1\\u0088\\u00d1\\u0082\\u00d0\\u00b5\\u00d1\\u0080\\u00d0\\u00bd ","text":"\\u0412 \\u044d\\u0442\\u043e\\u043c \\u0432\\u0441\\u044f \\u0441\\u0443\\u0442\\u044c."}'


вот так в результате становится или я путаю, уже столько конвертаций попробовал. Но такой прямой декод точно делал
источник

SK

Sergio Keler in SPb Python
тормоз :D
>>> txt = b'\u00d0\u00bc\u00d0\u00be\u00d1\u0080\u00d0\u00b3\u00d0\u00b5\u00d0\u00bd\u00d1\u0088\u00d1\u0082\u00d0\u00b5\u00d1\u0080\u00d0\u00bd'
>>>
>>> txt.decode('unicode-escape').encode('latin1').decode('utf8')
'моргенштерн'
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Так этот солюшн выше уже был
источник

SK

Sergio Keler in SPb Python
>>> txt = b'\u00d0\u00bc\u00d0\u00be\u00d1\u0080\u00d0\u00b3\u00d0\u00b5\u00d0\u00bd\u00d1\u0088\u00d1\u0082\u00d0\u00b5\u00d1\u0080\u00d0\u00bd -- some shit'
>>> txt.decode('unicode-escape').encode('latin1').decode('utf8')
'моргенштерн -- some shit'
источник

SK

Sergio Keler in SPb Python
так пользуй
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Только проблема в том, что в итоге то переводится не весь ответ в хьюман ридебл.
источник

Д☆

Дурак из фильма ☆★... in SPb Python
import json
import sys
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'
if sys.argv[1]:
   payload = {"query": sys.argv[1], "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(sys.argv[1])

   answer = response.read()
   print(answer)
   #print(answer.decode('unicode-escape').encode('latin1', 'ignore').decode('utf8'))
   #print(answer.decode('unicode-escape').encode('latin1').decode('utf8'))

   print(answer.decode('utf8'))
источник

SK

Sergio Keler in SPb Python
>>> txt.decode('unicode-escape')
'моÑ\x80генÑ\x88Ñ\x82еÑ\x80н -- some shit'
>>> txt.decode('unicode-escape').encode('latin1')
b'\xd0\xbc\xd0\xbe\xd1\x80\xd0\xb3\xd0\xb5\xd0\xbd\xd1\x88\xd1\x82\xd0\xb5\xd1\x80\xd0\xbd -- some shit'
>>> txt.decode('unicode-escape').encode('latin1').decode('utf8')
'моргенштерн -- some shit'
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Вот весь код, сам можешь потыкаться
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Надо аргументом отправить текст, и в ответ должно прийти нечто сгенерённое MLем яши
источник

SK

Sergio Keler in SPb Python
ничего не понял. переведи на русский
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Раскаменти предпоследнюю строку,  и при запуске аргументом укажи строку с любым текстом на русском
источник

Д☆

Дурак из фильма ☆★... in SPb Python
в поле text по идее должно вернуться так же несколько слов на русском, сгенерённых апишкой балабобы от яндекса
источник

Д☆

Дурак из фильма ☆★... in SPb Python
json.loads кажется интереснее результат даёт. Но всё ещё есть какая-то срань левая:

{'bad_query': 0, 'error': 0, 'query': 'Ð\x97елибоба гопа ', 'text': "o»\n1'030 Подписчиков\nДругие идеи пользователя irina-yurina\nФотография Женские Позы, Картинки Поз, Пейзажная Фотография, Портретная Фотография, Позы Моделей, Модные Позы, Фотографии Девушек, Романтические Картины, Советы По Фотографии\nПозы Для Фотосессий, Творческая Фотография, Городская Фотография, Ночная Фотография, Вдохновляющая Фотография, Профессиональная Фотография, Советы По Фотосъемке, Картинки Парижа, Фотографии Города"}
источник

Д☆

Дурак из фильма ☆★... in SPb Python
Вот что это за хурма прилетела "'text': "o»\n1'030 Подписчиков\n"? \n перенос строки, но кроме него есть ещё несколько невнятных символов.
источник

SK

Sergio Keler in SPb Python
skiller@SK-MacAir:~/Tmp $ python3 z.py жопа
params=b'{"query": "\\u0436\\u043e\\u043f\\u0430", "intro": 0, "filter": 1}'
жопа
answer=b'{"bad_query":0,"error":0,"query":"\\u0436\\u043e\\u043f\\u0430, ","text":"\\u043d\\u043e \\u044f \\u0441\\u0442\\u0430\\u0440\\u0430\\u044e\\u0441\\u044c)"}'
decoded={"bad_query":0,"error":0,"query":"жопа, ","text":"но я стараюсь)"}
источник

SK

Sergio Keler in SPb Python
params = json.dumps(payload).encode('utf8')
   print(f"params={params}")
   req = urllib.request.Request(API_URL, data=params, headers=headers)
   response = urllib.request.urlopen(req)

   print(sys.argv[1])

   answer = response.read()
   print(f"answer={answer}")
   print(f"decoded={answer.decode('unicode-escape').encode().decode('utf8')}")
источник

SK

Sergio Keler in SPb Python
\\ потому, что второй \ ставит принт
источник

Д☆

Дурак из фильма ☆★... in SPb Python
f'' это типа форматированная строка?
источник

SK

Sergio Keler in SPb Python
да
источник