У меня открывается разъем, и я хотел бы прочитать некоторые данные JSON. Проблема Состоит в том, что модуль JSON
из стандартной библиотеки может только разбираться из строк ( нагрузки
только читает весь файл и вызовы нагрузки
внутри) он даже выглядит так Внутри модуля все зависит от параметра, являющегося строкой.
Это реальная проблема с сокетами, поскольку вы никогда не можете прочитать все это строку, и вы не знаете, сколько байтов, чтобы прочитать, прежде чем вы на самом деле разбирать его.
Итак, мои вопросы: есть ли (простой и элегантный) обходной путь? Есть ли (простой и элегантный) обходной путь? Есть ли другая библиотека JSON, которая может постепенно разбирать данные? Стоит ли написать это сам?
Редактировать: это XBMC JSONRPC API. Там нет никаких сообщений И у меня нет контроля над форматом. Каждое сообщение может быть на одной строке или на нескольких строках.
Я мог бы написать несколько простых парсеров, которые нуждаются в функции GETC в некоторой форме и кормить его, используя S.RECV (1)
, но это не так, как очень не является питонным решением, и я немного ленивый Вот: -)