Call frog on the text and return (sent, offset, word, lemma, pos, morphofeat) tuples

def call_frog(text):
    """
    Call frog on the text and return (sent, offset, word, lemma, pos, morphofeat) tuples
    """
    
    host, port = os.environ.get('FROG_HOST', 'localhost:9887').split(":")
    frogclient = FrogClient(host, port, returnall=True)
    sent = 1
    offset = 0
    for word, lemma, morph, morphofeat, ner, chunk, _p1, _p2 in frogclient.process(text):
        if word is None:
            sent += 1
        else:
            pos = _POSMAP[morphofeat.split("(")[0]]
            yield Token(sent, offset, word, lemma, pos, morphofeat, ner, chunk)
            offset += len(word)