def _recv_loop(self): buf = b'' while True: try: data = self._socket.recv(512) except greenlet.GreenletExit: raise except Exception: eventlet.spawn(self.reconnect) buf += data pos = buf.find(b"\n") while pos >= 0: line = unquote_plus(force_str(buf[0:pos])) parts = line.split(' ') if len(parts) >= 3: parts = line.split(' ', 2) parts.pop(0) self._recv_queue.put(parts) else: # print len(parts), line pass buf = buf[pos + 1:] pos = buf.find(b"\n")
def get_chains_from_tokens(self, tokens): tokens = [stemmer.stem(token) for token in tokens] while tokens: token = random.choice(tokens) try: results = json.loads(force_str(self.client.eval(self.generate_sentence, 0, token, 10))) except UnicodeError: continue if not results: tokens.remove(token) continue for result in results: yield result["chain"], result["score"]
def store_string(self, text): try: tokens = tokenizer.split(force_str(text)) return self.store_tokens(tokens) except UnicodeError: pass
def test_force_str_b(self): self.assertTrue(isinstance(force_str(b"hello"), str))