示例#1
0
def dep_parse(sents, entity):
    dep_parser = CoreNLPDependencyParser(url='http://localhost:9000')
    parsers = dep_parser.raw_parse_sents(sents)
    deps = []
    for (parser, ) in parsers:
        for governor, dep, dependent in parser.triples():
            is_dep_verb = (
                (governor[0] in entity and dependent[1].startswith("VB"))
                or (dependent[0] in entity and governor[1].startswith("VB")))
            if is_dep_verb:
                deps.append((governor, dep, dependent))
    return deps
def _dependency_parse(sentences):
    ### 3.4.1 CoreNLP Dependency Parser
    from nltk.parse.corenlp import CoreNLPDependencyParser as DP
    dep_parser = DP(url='http://localhost:9000')

    # example:
    # parse, = dep_parser.raw_parse(
    #     'The quick brown fox jumps over the lazy dog.'
    # )
    # print(parse.to_conll(4))

    parse = dep_parser.raw_parse_sents(sentences)

    dep_trees = []
    for itr_tree in parse:
        for tree in itr_tree:
            dep_trees.append(tree)
            # print(tree.to_conll(4))
    #         print(tree.tree())
    #     print()

    return dep_trees