NLP-Cube is an opensource Natural Language Processing Framework with support for languages which are included in the UD Treebanks (list of all available languages below). Use NLP-Cube if you need:
# install
!pip install -U nlpcube
# create instance
from cube.api import Cube
cube=Cube(verbose=True)
# load model
cube.load('en')
# run
text="All the faith he had had, had had no effect on the outcome of his life."
sentences=cube(text)
for sentence in sentences:
for entry in sentence:
print(str(entry.index)+"\t"+entry.word+"\t"+entry.lemma+"\t"+entry.upos+"\t"+entry.xpos+"\t"+entry.attrs+"\t"+str(entry.head)+"\t"+str(entry.label)+"\t"+entry.space_after)
print("")
And this is the output:
1 All all DET PDT _ 3 det:predet _
2 the the DET DT Definite=Def|PronType=Art 3 det _
3 faith faith NOUN NN Number=Sing 9 nsubj _
4 he he PRON PRP Case=Nom|Gender=Masc|Number=Sing|Person=3|PronType=Prs 6 nsubj _
5 had have AUX VBD Mood=Ind|Tense=Past|VerbForm=Fin 6 aux _
6 had have VERB VBN Tense=Past|VerbForm=Part 3 acl:relcl SpaceAfter=No
7 , , PUNCT , _ 9 punct _
8 had have AUX VBD Mood=Ind|Tense=Past|VerbForm=Fin 9 aux _
9 had have VERB VBN Tense=Past|VerbForm=Part 0 root _
10 no no DET DT _ 11 det _
11 effect effect NOUN NN Number=Sing 9 obj _
12 on on ADP IN _ 14 case _
13 the the DET DT Definite=Def|PronType=Art 14 det _
14 outcome outcome NOUN NN Number=Sing 11 nmod _
15 of of ADP IN _ 17 case _
16 his he PRON PRP$ Gender=Masc|Number=Sing|Person=3|Poss=Yes|PronType=Prs 17 nmod:poss _
17 life life NOUN NN Number=Sing 14 nmod SpaceAfter=No
18 . . PUNCT . _ 9 punct SpaceAfter=No