示例#1
0
 def test():
     parser = RobustParser(NumbersGrammar())
     for sent, expect in NumbersGrammar.sents:
         t, r = parser.parse(sent)
         # print(t)
         # print(r)
         assert r.get() == expect, "%s <- %s" % (str(r.get()), sent)
示例#2
0
 def test():
     parser = RobustParser(NumbersGrammar())
     for sent, expect in NumbersGrammar.sents:
         t, r = parser.parse(sent)
         # print(t)
         # print(r)
         assert r.get() == expect, "%s <- %s" % (str(r.get()), sent)
示例#3
0
 def test():
     g = TimesGrammar()
     parser = RobustParser(g)
     for sent, expect in TimesGrammar.sents:
         _, r = parser.parse(sent)
         print(r)
         assert r.get() == expect, "%s <- %s" % (str(r.get()), sent)
示例#4
0
 def test():
     parser = RobustParser((LightAdvancedGrammar()))
     tree, result = parser.parse("flash my top light twice in red and "
                                 "blink middle light 20 times in yellow")
     print tree
     print result
     assert result.one_parse[0].color == (255, 0, 0)
     assert result.one_parse[0].times == 2
     assert result.one_parse[1].color == (255, 255, 0)
     assert result.one_parse[1].times == 20
     print
 def test():
     parser = RobustParser((LightAdvancedGrammar()))
     tree, result = parser.parse("flash my top light twice in red and "
                                 "blink middle light 20 times in yellow")
     print tree
     print result
     assert result.one_parse[0].color == (255, 0, 0)
     assert result.one_parse[0].times == 2
     assert result.one_parse[1].color == (255, 255, 0)
     assert result.one_parse[1].times == 20
     print
 def test():
     parser = RobustParser((LightGrammar()))
     sents = [
         "set my top light to red",
         "set my top light to red and change middle light to yellow",
         "set my top light to red and change middle light to yellow and "
         "flash bottom light twice in blue"
     ]
     for sent in sents:
         tree, result = parser.parse(sent)
         print '"%s"' % sent
         print "parse tree:"
         print tree
         print "parse result:"
         print result
         print
示例#7
0
    def test():
        parser = RobustParser((QuestionGrammar()))
        sents = [
            "what was the revenue for Amazon last quarter?",
            "did revenue numbers change for Amazon from last quarter to this quarter?",
            "how much did same store sales increase for Apple last quarter?"
        ]
        for sent in sents:
            tree, result = parser.parse(sent)
            assert result.one_parse[0].color == 'red'

            print '"%s"' % sent
            print "parse tree:"
            print tree
            print "parse result:"
            print result
            print
示例#8
0
def callback(data):
    parser = RobustParser(TransportGrammar())
    tree, result = parser.parse(data.data)
    msg_object = GoAndGetIt()
    msg_deliver = GoAndGetIt()
    if tree:
        benificiary = search_benificiary(tree)
        if benificiary == "left":
            msg_deliver.person_left = True
        elif benificiary == "right":
            msg_deliver.person_right = True
        else:
            msg_deliver.person_left = True
            msg_deliver.person_right = True
        pub_deliver.publish(msg_deliver)
        msg_object.perceived_object_name = recursive_search_object(tree)
        if msg_object.perceived_object_name != "":
            pub.publish(msg_object)
示例#9
0
            print "parse result:"
            print result
            print


def clean_sent(sent):
    return sent.strip(string.punctuation)


parser = RobustParser(QuestionGrammar())
sents = [
    "what were the revenue and same store sales numbers for Amazon from last quarter?"
]
for sent in sents:
    sent = clean_sent(sent)
    tree, result = parser.parse(sent)
    print '"%s"' % sent
    print "parse result:"
    if result is not None:
        for key, vals in result.items():
            for val in vals:
                if key != "GOAL":
                    direction = val.get("direction", None)
                    search = val.get("search", None)
                    company = val.get("company", None)
                    duration = val.get("duration", None)

                    print "Search - %s" % search
                    print "Direction - %s" % direction
                    print "Company - %s" % company
                    print "Duration - %s" % duration
示例#10
0
 def test():
     parser = RobustParser(ColorsGrammar())
     for name, rgb in color2rgb.items():
         t, r = parser.parse(name)