我打开了一个套接字,我想从中读取一些json数据.问题是json标准库中的模块只能从字符串解析(load只读取整个文件并调用loads内部)它甚至看起来模块内部的所有方式都取决于参数是字符串.
这是套接字的一个真正问题,因为你永远无法将它全部读取为字符串,并且在实际解析之前你不知道要读取多少字节.
所以我的问题是:是否有(简单而优雅)的解决方法?是否有另一个可以递增地解析数据的json库?值得自己写吗?
编辑:这是XBMC jsonrpc api.没有消息信封,我无法控制格式.每条消息可以在一行或多行上.我可以编写一些简单的解析器,它只需要某种形式的getc函数并使用它来提供它s.recv(1),但这不是一个非常pythonic的解决方案,我有点懒,这样做:-)