Ejemplo n.º 1
0
    def imdb_poster(self, speech, language, regex):
        ShowTitle = regex.group(regex.lastindex)
        Query = urllib.quote_plus(ShowTitle.encode("utf-8"))
        IMDBURL = 'http://www.imdbapi.com/?i=&t=%s' % (str(Query))
        try:
            # Query IMDB
            jsonResponse = urllib2.urlopen(IMDBURL).read()
            jsonDecoded = json.JSONDecoder().decode(jsonResponse)

            self.say("Here is the movie poster:")
            view = AddViews(self.refId, dialogPhase="Completion")

            AnswerString = jsonDecoded['Poster']
            IMDBAnswerMissed = AnswerObject(
                title='Movie Poster:',
                lines=[AnswerObjectLine(image=AnswerString)])

            view1 = 0
            view1 = AnswerSnippet(answers=[IMDBAnswerMissed])
            view.views = [view1]
            self.sendRequestWithoutAnswer(view)
            self.complete_request()
        except (urllib2.URLError):
            self.say(
                "Sorry, a connection to IMDBapi could not be established.")
            self.complete_request()
Ejemplo n.º 2
0
 def displaypicture(self, speech, language, regex):
     if language == "zh-CN":
         Title = regex.group(3).strip()
     else:
         Title = regex.group(regex.lastindex).strip()
     Query = urllib.quote_plus(Title.encode("utf-8"))
     SearchURL = u'https://ajax.googleapis.com/ajax/services/search/images?v=1.0&imgsz=small|medium|large|xlarge&q=' + str(Query)
     try:
         if language == "zh-CN":
             self.say(u"这是有关{0}的图片:".format(Title))
         else:
             self.say("Here is the image for "+Title+"...")
         jsonResponse = urllib2.urlopen(SearchURL).read()
         jsonDecoded = json.JSONDecoder().decode(jsonResponse)
         ImageURL = jsonDecoded['responseData']['results'][0]['unescapedUrl']
         view = AddViews(self.refId, dialogPhase="Completion")
         ImageAnswer = AnswerObject(title=Title,lines=[AnswerObjectLine(image=ImageURL)])
         view1 = AnswerSnippet(answers=[ImageAnswer])
         view.views = [view1]
         self.sendRequestWithoutAnswer(view)
         self.complete_request()
     except (urllib2.URLError):
         if language == "zh-CN":
             self.say(u"抱歉,我无法连接谷歌图片服务。")
         else:
             self.say("Sorry, a connection to Google Images could not be established.")
         self.complete_request()
Ejemplo n.º 3
0
    def imdb_info(self, speech, language, regex):
        ShowTitle = regex.group(regex.lastindex)
        Query = urllib.quote_plus(ShowTitle.encode("utf-8"))
        IMDBURL = 'http://www.imdbapi.com/?i=&t=%s' % (str(Query))
        try:
            # Query IMDB
            jsonResponse = urllib2.urlopen(IMDBURL).read()
            jsonDecoded = json.JSONDecoder().decode(jsonResponse)

            self.say("Here is the info about the movie:")
            view = AddViews(self.refId, dialogPhase="Completion")

            AnswerString = jsonDecoded['Title'] + ' (' + jsonDecoded[
                'Released'] + ')' + '\n Genre: ' + jsonDecoded[
                    'Genre'] + '\n Directors: ' + jsonDecoded[
                        'Director'] + '\n Actors: ' + jsonDecoded[
                            'Actors'] + '\n Plot: ' + jsonDecoded[
                                'Plot'] + '\n Runtime: ' + jsonDecoded[
                                    'Runtime'] + '\n Rating: ' + jsonDecoded[
                                        'Rating'] + ' / Voted: ' + jsonDecoded[
                                            'Votes'] + 'x'
            IMDBAnswerMissed = AnswerObject(
                title='IMDB:', lines=[AnswerObjectLine(text=AnswerString)])

            view1 = 0
            view1 = AnswerSnippet(answers=[IMDBAnswerMissed])
            view.views = [view1]
            self.sendRequestWithoutAnswer(view)
            self.complete_request()
        except (urllib2.URLError):
            self.say(
                "Sorry, a connection to IMDBapi could not be established.")
            self.complete_request()
Ejemplo n.º 4
0
    def get_actorbycharacter(self,  speech,  language,  regex):
        if language == "en-US":
            
            # get the name of the character to look up
            character = regex.group(2)
            character = character.title().strip()
            
            # get the name of the movie to look up
            movie = regex.group(3)
            movie = movie.title()
            
            ia = IMDb()
            search_result = ia.search_movie(movie)
            
            if not search_result:
                self.say("No matches found for that title")
                self.complete_request()
            else:
                movietitle = search_result[0]['title']
                moviedetails = search_result[0]
                ia.update(moviedetails)

                cast = moviedetails['cast']
                
                try:
                    for actor in cast:                 
                        if character in actor.currentRole['name']:
                            self.say(actor['name'])
                            
                            #Get Image
                            Query = urllib.quote_plus(actor['name'].encode("utf-8"))
                            SearchURL = u'https://ajax.googleapis.com/ajax/services/search/images?v=1.0&imgsz=small|medium|large|xlarge&q=' + str(Query)
                            try:
                                jsonResponse = urllib2.urlopen(SearchURL).read()
                                jsonDecoded = json.JSONDecoder().decode(jsonResponse)
                                ImageURL = jsonDecoded['responseData']['results'][0]['unescapedUrl']
                                view = AddViews(self.refId, dialogPhase="Completion")
                                ImageAnswer = AnswerObject(title=str(actor['name']),lines=[AnswerObjectLine(image=ImageURL)])
                                view1 = AnswerSnippet(answers=[ImageAnswer])
                                view.views = [view1]
                                self.sendRequestWithoutAnswer(view)
                                self.complete_request()
                            except (urllib2.URLError):
                                    self.say("Sorry, a connection to Google Images could not be established.")
                                    self.complete_request()

                            
                            self.complete_request()
                                        
                    self.complete_request()
                except:
                    self.say("Sorry, I couldnt find any characters by that name in " + movietitle)
                    self.complete_request()
Ejemplo n.º 5
0
 def testbild(self, speech, language):
     html = urllib.urlopen(
         "http://sullenlook.eu/Pix/cydia/info/testbild.png/")
     soup = BeautifulSoup(html)
     ImageURL = "http://sullenlook.eu/Pix/cydia/info/testbild.png/"
     view = AddViews(self.refId, dialogPhase="Completion")
     ImageAnswer = AnswerObject(
         title=str("Testbild"),
         lines=[
             AnswerObjectLine(
                 image="http://sullenlook.eu/Pix/cydia/info/testbild.png")
         ])
     view1 = AnswerSnippet(answers=[ImageAnswer])
     view.views = [view1]
     self.sendRequestWithoutAnswer(view)
Ejemplo n.º 6
0
 def defineword(self, speech, language, regex):
     Title = regex.group(regex.lastindex)
     Query = urllib.quote_plus(Title.encode("utf-8"))
     SearchURL = u'https://ajax.googleapis.com/ajax/services/search/images?v=1.0&imgsz=small|medium|large|xlarge&q=' + str(Query)
     try:
         jsonResponse = urllib2.urlopen(SearchURL).read()
         jsonDecoded = json.JSONDecoder().decode(jsonResponse)
         ImageURL = jsonDecoded['responseData']['results'][0]['unescapedUrl']
         view = AddViews(self.refId, dialogPhase="Completion")
         ImageAnswer = AnswerObject(title=str(Title),lines=[AnswerObjectLine(image=ImageURL)])
         view1 = AnswerSnippet(answers=[ImageAnswer])
         view.views = [view1]
         self.sendRequestWithoutAnswer(view)
         self.complete_request()
     except (urllib2.URLError):
         self.say("Sorry, a connection to Google Images could not be established.")
         self.complete_request()
Ejemplo n.º 7
0
 def wolfram(self, speech, language, regex):
     if language == 'fr-FR':
         wolframQuestion = regex.group(regex.lastindex).strip()
         wolframQuestion = wolframQuestion.replace("le ", "").replace(
             "la ", "").replace("les ", "").replace("un ", "").replace(
                 "une ", "").replace("de ",
                                     "").replace("du ",
                                                 "").replace("des ", "")
         wolframTranslation = 'true'
     elif language == "en-US":
         wolframQuestion = speech.replace('who is ', '').replace(
             'how many ', '').replace('what was ', '').replace(
                 'Who is ', '').replace('What is ',
                                        '').replace('What was ',
                                                    '').replace(' ', '%20')
         wolframTranslation = 'false'
     elif language == "de-DE":
         wolframQuestion = speech.replace('wer ist ', '').replace(
             'was ist ',
             '').replace('Wer ist ', '').replace('Was ist ', '').replace(
                 'Wie viel ',
                 'How much ').replace('Wie lang ', 'How long ').replace(
                     'Wie weit ',
                     'How far ').replace('Wann ist ', 'When is ').replace(
                         'Zeig mir ', 'Show me '
                     ).replace('Wie hoch ', 'How high ').replace(
                         'Wie tief ',
                         'How deep ').replace('ist', 'is').replace(
                             'der', 'the').replace('die', 'the').replace(
                                 'das', 'the').replace(
                                     'wie viel ', 'how much ').replace(
                                         'wie lang ', 'how long ').replace(
                                             'wie weit ',
                                             'how far ').replace(
                                                 'wann ist ', 'when is '
                                             ).replace(
                                                 'zeig mir ', 'show me '
                                             ).replace(
                                                 'wie hoch ', 'how high '
                                             ).replace(
                                                 'wie tief ', 'how deep '
                                             ).replace('ist', 'is').replace(
                                                 'der', 'the'
                                             ).replace(
                                                 'die', 'the'
                                             ).replace(
                                                 'das', 'the'
                                             ).replace(' ', '%20').replace(
                                                 u'ä', 'a').replace(
                                                     u'ö', 'o').replace(
                                                         u'ü', 'u').replace(
                                                             u'ß', 's')
         wolframTranslation = 'true'
     else:
         wolframQuestion = speech.replace('who is ', '').replace(
             'what is ', '').replace('what was ', '').replace(
                 'Who is ', '').replace('What is ',
                                        '').replace('What was ',
                                                    '').replace(' ', '%20')
         wolframTranslation = 'false'
     wolfram_alpha = u'http://api.wolframalpha.com/v1/query.jsp?input=%s&appid=%s&translation=%s' % (
         urllib.quote_plus(
             wolframQuestion.encode("utf-8")), APPID, wolframTranslation)
     dom = minidom.parse(urlopen(wolfram_alpha))
     count_wolfram = 0
     wolfram0 = 12
     wolfram_pod0 = 12
     wolfram0_img = 12
     wolfram1 = 12
     wolfram_pod1 = 12
     wolfram1_img = 12
     wolfram2 = 12
     wolfram_pod2 = 12
     wolfram2_img = 12
     wolfram3 = 12
     wolfram_pod3 = 12
     wolfram3_img = 12
     wolfram4 = 12
     wolfram_pod4 = 12
     wolfram4_img = 12
     wolfram5 = 12
     wolfram_pod5 = 12
     wolfram5_img = 12
     wolfram6 = 12
     wolfram_pod6 = 12
     wolfram6_img = 12
     wolfram7 = 12
     wolfram_pod7 = 12
     wolfram7_img = 12
     wolfram8 = 12
     wolfram_pod8 = 12
     wolfram8_img = 12
     wolframAnswer = 12
     wolframAnswer2 = 12
     wolframAnswer3 = 12
     wolframAnswer4 = 12
     wolframAnswer8 = 12
     query_list = dom.getElementsByTagName('queryresult')[-1]
     query_type = query_list.getAttribute('error')
     for node in dom.getElementsByTagName('queryresult'):
         for pod in node.getElementsByTagName('pod'):
             xmlTag = dom.getElementsByTagName(
                 'plaintext')[count_wolfram].toxml()
             xmlTag2 = dom.getElementsByTagName('subpod')[count_wolfram]
             xmlData = xmlTag.replace('<plaintext>',
                                      '').replace('</plaintext>', '')
             if count_wolfram == 0:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram0 = image_type
                     wolfram0_img = 1
                 else:
                     wolfram0 = xmlData
                 wolfram_pod0 = pod.getAttribute('title')
             elif count_wolfram == 1:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram1 = image_type
                     wolfram1_img = 1
                 else:
                     wolfram1 = xmlData
                 wolfram_pod1 = pod.getAttribute('title')
             elif count_wolfram == 2:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram2 = image_type
                     wolfram2_img = 1
                 else:
                     wolfram2 = xmlData
                 wolfram_pod2 = pod.getAttribute('title')
             elif count_wolfram == 3:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram3 = image_type
                     wolfram3_img = 1
                 else:
                     wolfram3 = xmlData
                 wolfram_pod3 = pod.getAttribute('title')
             elif count_wolfram == 4:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram4 = image_type
                     wolfram4_img = 1
                 else:
                     wolfram4 = xmlData
                 wolfram_pod4 = pod.getAttribute('title')
             elif count_wolfram == 5:
                 wolfram5 = xmlData
                 wolfram_pod5 = pod.getAttribute('title')
             elif count_wolfram == 6:
                 wolfram6 = xmlData
                 wolfram_pod6 = pod.getAttribute('title')
             elif count_wolfram == 7:
                 wolfram7 = xmlData
                 wolfram_pod7 = pod.getAttribute('title')
             elif count_wolfram == 8:
                 wolfram8 = xmlData
                 wolfram_pod8 = pod.getAttribute('title')
             count_wolfram += 1
     # Waiting for a response
     view = AddViews(self.refId, dialogPhase="Completion")
     if wolfram_pod0 != 12:
         if wolfram0_img == 1:
             wolframAnswer = AnswerObject(
                 title=wolfram_pod0,
                 lines=[AnswerObjectLine(image=wolfram0)])
         else:
             wolframAnswer = AnswerObject(
                 title=wolfram_pod0,
                 lines=[AnswerObjectLine(text=wolfram0)])
     else:
         print wolfram_pod0
     if wolfram_pod1 != 12:
         if wolfram1_img == 1:
             wolframAnswer1 = AnswerObject(
                 title=wolfram_pod1,
                 lines=[AnswerObjectLine(image=wolfram1)])
         else:
             wolframAnswer1 = AnswerObject(
                 title=wolfram_pod1,
                 lines=[AnswerObjectLine(text=wolfram1)])
     else:
         print wolfram_pod1
     if wolfram_pod2 != 12:
         if wolfram2_img == 1:
             wolframAnswer2 = AnswerObject(
                 title=wolfram_pod2,
                 lines=[AnswerObjectLine(image=wolfram2)])
         else:
             wolframAnswer2 = AnswerObject(
                 title=wolfram_pod2,
                 lines=[AnswerObjectLine(text=wolfram2)])
     else:
         print wolfram_pod2
     if wolfram_pod3 != 12:
         if wolfram3_img == 1:
             wolframAnswer3 = AnswerObject(
                 title=wolfram_pod3,
                 lines=[AnswerObjectLine(image=wolfram3)])
         else:
             wolframAnswer3 = AnswerObject(
                 title=wolfram_pod3,
                 lines=[AnswerObjectLine(text=wolfram3)])
     else:
         print wolfram_pod3
     if wolfram_pod4 != 12:
         if wolfram4_img == 1:
             wolframAnswer4 = AnswerObject(
                 title=wolfram_pod4,
                 lines=[AnswerObjectLine(image=wolfram4)])
         else:
             wolframAnswer4 = AnswerObject(
                 title=wolfram_pod4,
                 lines=[AnswerObjectLine(text=wolfram4)])
     else:
         print wolfram_pod4
     if wolfram_pod8 != 12:
         if wolfram8_img == 1:
             wolframAnswer8 = AnswerObject(
                 title=wolfram_pod8,
                 lines=[AnswerObjectLine(image=wolfram8)])
         else:
             wolframAnswer8 = AnswerObject(
                 title=wolfram_pod8,
                 lines=[AnswerObjectLine(text=wolfram8)])
     if wolfram_pod0 != 12:
         # I found it
         if language == 'de-DE':
             self.say("Dies koennte Ihre Frage beantworten:")
         elif language == 'fr-FR':
             rep = [
                 u"Cela pourrait répondre à votre question : ",
                 u"Voici la réponse à votre question : ",
                 u"Cela répond peut-être à votre question : "
             ]
             self.say(random.choice(rep))
         else:
             self.say("This might answer your question:")
     if wolfram_pod0 == 12:
         if language == 'de-DE':
             self.say(
                 "Es tut mir leid. Ich konnte keine Antwort auf Ihre Frage finden."
             )
         elif language == 'fr-FR':
             rep = [
                 u"Je n'ai trouvé aucune réponse à votre question !",
                 u"Je ne trouve pas la réponse à votre question !",
                 u"Je ne trouve aucune réponse à votre question !",
                 u"Désolé, je ne connais pas de réponse à votre question !"
             ]
             self.say(random.choice(rep))
         else:
             self.say("Nothing was found for your query!")
         self.complete_request()
         view1 = 0
     elif wolfram_pod1 == 12:
         view1 = AnswerSnippet(answers=[wolframAnswer])
     elif wolfram_pod2 == 12:
         view1 = AnswerSnippet(answers=[wolframAnswer, wolframAnswer1])
     elif wolfram_pod3 == 12:
         view1 = AnswerSnippet(
             answers=[wolframAnswer, wolframAnswer1, wolframAnswer2])
     elif wolfram_pod4 == 12:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3
         ])
     elif wolfram_pod8 == 12:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3,
             wolframAnswer4
         ])
     else:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3,
             wolframAnswer4, wolframAnswer8
         ])
     view.views = [view1]
     self.sendRequestWithoutAnswer(view)
     self.complete_request()
Ejemplo n.º 8
0
 def wolfram(self, speech, language):
     if language == "en-US":
         wolframQuestion = speech.replace('who is ', '').replace(
             'what is ', '').replace('what was ', '').replace(
                 'Who is ', '').replace('What is ',
                                        '').replace('What was ',
                                                    '').replace(' ', '%20')
         wolframTranslation = 'false'
     elif language == "de-DE":
         wolframQuestion = speech.replace('wer ist ', '').replace(
             'was ist ',
             '').replace('Wer ist ', '').replace('Was ist ', '').replace(
                 'Wie viel ',
                 'How much ').replace('Wie lang ', 'How long ').replace(
                     'Wie weit ',
                     'How far ').replace('Wann ist ', 'When is ').replace(
                         'Zeig mir ', 'Show me '
                     ).replace('Wie hoch ', 'How high ').replace(
                         'Wie tief ',
                         'How deep ').replace('ist', 'is').replace(
                             'der', 'the').replace('die', 'the').replace(
                                 'das', 'the').replace(
                                     'wie viel ', 'how much ').replace(
                                         'wie lang ', 'how long ').replace(
                                             'wie weit ',
                                             'how far ').replace(
                                                 'wann ist ', 'when is '
                                             ).replace(
                                                 'zeig mir ', 'show me '
                                             ).replace(
                                                 'wie hoch ', 'how high '
                                             ).replace(
                                                 'wie tief ', 'how deep '
                                             ).replace('ist', 'is').replace(
                                                 'der', 'the'
                                             ).replace(
                                                 'die', 'the'
                                             ).replace(
                                                 'das', 'the'
                                             ).replace(' ', '%20').replace(
                                                 u'ä', 'a').replace(
                                                     u'ö', 'o').replace(
                                                         u'ü', 'u').replace(
                                                             u'ß', 's')
         wolframTranslation = 'true'
     else:
         wolframQuestion = speech.replace('who is ', '').replace(
             'what is ', '').replace('what was ', '').replace(
                 'Who is ', '').replace('What is ',
                                        '').replace('What was ',
                                                    '').replace(' ', '%20')
         wolframTranslation = 'false'
     wolfram_alpha = 'http://api.wolframalpha.com/v1/query.jsp?input=%s&appid=%s&translation=%s' % (
         wolframQuestion, APPID, wolframTranslation)
     dom = minidom.parse(urlopen(wolfram_alpha))
     count_wolfram = 0
     wolfram0 = 12
     wolfram_pod0 = 12
     wolfram0_img = 12
     wolfram1 = 12
     wolfram_pod1 = 12
     wolfram1_img = 12
     wolfram2 = 12
     wolfram_pod2 = 12
     wolfram2_img = 12
     wolfram3 = 12
     wolfram_pod3 = 12
     wolfram3_img = 12
     wolfram4 = 12
     wolfram_pod4 = 12
     wolfram4_img = 12
     wolfram5 = 12
     wolfram_pod5 = 12
     wolfram5_img = 12
     wolfram6 = 12
     wolfram_pod6 = 12
     wolfram6_img = 12
     wolfram7 = 12
     wolfram_pod7 = 12
     wolfram7_img = 12
     wolfram8 = 12
     wolfram_pod8 = 12
     wolfram8_img = 12
     wolframAnswer = 12
     wolframAnswer2 = 12
     wolframAnswer3 = 12
     wolframAnswer4 = 12
     wolframAnswer8 = 12
     query_list = dom.getElementsByTagName('queryresult')[-1]
     query_type = query_list.getAttribute('error')
     for node in dom.getElementsByTagName('queryresult'):
         for pod in node.getElementsByTagName('pod'):
             xmlTag = dom.getElementsByTagName(
                 'plaintext')[count_wolfram].toxml()
             xmlTag2 = dom.getElementsByTagName('subpod')[count_wolfram]
             xmlData = xmlTag.replace('<plaintext>',
                                      '').replace('</plaintext>', '')
             if count_wolfram == 0:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram0 = image_type
                     wolfram0_img = 1
                 else:
                     wolfram0 = xmlData
                 wolfram_pod0 = pod.getAttribute('title')
             elif count_wolfram == 1:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram1 = image_type
                     wolfram1_img = 1
                 else:
                     wolfram1 = xmlData
                 wolfram_pod1 = pod.getAttribute('title')
             elif count_wolfram == 2:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram2 = image_type
                     wolfram2_img = 1
                 else:
                     wolfram2 = xmlData
                 wolfram_pod2 = pod.getAttribute('title')
             elif count_wolfram == 3:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram3 = image_type
                     wolfram3_img = 1
                 else:
                     wolfram3 = xmlData
                 wolfram_pod3 = pod.getAttribute('title')
             elif count_wolfram == 4:
                 if xmlData == "<plaintext/>":
                     image_list = dom.getElementsByTagName(
                         'img')[count_wolfram]
                     image_type = image_list.getAttribute('src')
                     wolfram4 = image_type
                     wolfram4_img = 1
                 else:
                     wolfram4 = xmlData
                 wolfram_pod4 = pod.getAttribute('title')
             elif count_wolfram == 5:
                 wolfram5 = xmlData
                 wolfram_pod5 = pod.getAttribute('title')
             elif count_wolfram == 6:
                 wolfram6 = xmlData
                 wolfram_pod6 = pod.getAttribute('title')
             elif count_wolfram == 7:
                 wolfram7 = xmlData
                 wolfram_pod7 = pod.getAttribute('title')
             elif count_wolfram == 8:
                 wolfram8 = xmlData
                 wolfram_pod8 = pod.getAttribute('title')
             count_wolfram += 1
     if language == 'de-DE':
         self.say("Dies könnte Ihre Frage zu beantworten:")
     else:
         self.say("This might answer your question:")
     view = AddViews(self.refId, dialogPhase="Completion")
     if wolfram_pod0 != 12:
         if wolfram0_img == 1:
             wolframAnswer = AnswerObject(
                 title=wolfram_pod0,
                 lines=[AnswerObjectLine(image=wolfram0)])
         else:
             wolframAnswer = AnswerObject(
                 title=wolfram_pod0,
                 lines=[AnswerObjectLine(text=wolfram0)])
     else:
         print wolfram_pod0
     if wolfram_pod1 != 12:
         if wolfram1_img == 1:
             wolframAnswer1 = AnswerObject(
                 title=wolfram_pod1,
                 lines=[AnswerObjectLine(image=wolfram1)])
         else:
             wolframAnswer1 = AnswerObject(
                 title=wolfram_pod1,
                 lines=[AnswerObjectLine(text=wolfram1)])
     else:
         print wolfram_pod1
     if wolfram_pod2 != 12:
         if wolfram2_img == 1:
             wolframAnswer2 = AnswerObject(
                 title=wolfram_pod2,
                 lines=[AnswerObjectLine(image=wolfram2)])
         else:
             wolframAnswer2 = AnswerObject(
                 title=wolfram_pod2,
                 lines=[AnswerObjectLine(text=wolfram2)])
     else:
         print wolfram_pod2
     if wolfram_pod3 != 12:
         if wolfram3_img == 1:
             wolframAnswer3 = AnswerObject(
                 title=wolfram_pod3,
                 lines=[AnswerObjectLine(image=wolfram3)])
         else:
             wolframAnswer3 = AnswerObject(
                 title=wolfram_pod3,
                 lines=[AnswerObjectLine(text=wolfram3)])
     else:
         print wolfram_pod3
     if wolfram_pod4 != 12:
         if wolfram4_img == 1:
             wolframAnswer4 = AnswerObject(
                 title=wolfram_pod4,
                 lines=[AnswerObjectLine(image=wolfram4)])
         else:
             wolframAnswer4 = AnswerObject(
                 title=wolfram_pod4,
                 lines=[AnswerObjectLine(text=wolfram4)])
     else:
         print wolfram_pod4
     if wolfram_pod8 != 12:
         if wolfram8_img == 1:
             wolframAnswer8 = AnswerObject(
                 title=wolfram_pod8,
                 lines=[AnswerObjectLine(image=wolfram8)])
         else:
             wolframAnswer8 = AnswerObject(
                 title=wolfram_pod8,
                 lines=[AnswerObjectLine(text=wolfram8)])
     if wolfram_pod0 == 12:
         if APPID == "":
             self.say(
                 "Sorry I can't process your request. Your APPID is not set! Please register free dev account at http://wolframalpha.com and edit line 21 with you APPID."
             )
         else:
             if language == 'de-DE':
                 self.say(
                     "Es tut mir leid. Ich konnte keine Antwort auf Ihre Frage finden."
                 )
             else:
                 self.say("Nothing has found for your query!")
         self.complete_request()
         view1 = 0
     elif wolfram_pod1 == 12:
         view1 = AnswerSnippet(answers=[wolframAnswer])
     elif wolfram_pod2 == 12:
         view1 = AnswerSnippet(answers=[wolframAnswer, wolframAnswer1])
     elif wolfram_pod3 == 12:
         view1 = AnswerSnippet(
             answers=[wolframAnswer, wolframAnswer1, wolframAnswer2])
     elif wolfram_pod4 == 12:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3
         ])
     elif wolfram_pod8 == 12:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3,
             wolframAnswer4
         ])
     else:
         view1 = AnswerSnippet(answers=[
             wolframAnswer, wolframAnswer1, wolframAnswer2, wolframAnswer3,
             wolframAnswer4, wolframAnswer8
         ])
     view.views = [view1]
     self.sendRequestWithoutAnswer(view)
     self.complete_request()
Ejemplo n.º 9
0
    def move_lookup(self,  speech,  language,  regex):
       
        MovieTitle = regex.group(regex.lastindex).strip()
        ia = IMDb()
        search_result = ia.search_movie(MovieTitle)
        if not search_result:
            if language == "zh-CN":
                self.say(u"抱歉,我没找到“" + str(MovieTitle.encode("utf-8")) + u"”的信息。")
            else:
                self.say("Sorry, I could not find any information for " + MovieTitle)
            self.complete_request()
        
        else:
            
            if language == "zh-CN":
                self.say(u"好的,我来为您查找。")
            else:
                self.say("Let me look that up for you.")
            view = AddViews(self.refId, dialogPhase="Completion")
            
            # -- Get Movie Info --
            movie_info = search_result[0]
            MovieTitle = movie_info['long imdb canonical title']
            ia.update(movie_info)
        
            # -- Get the URL for poster --
            AnswerStringPosterURL = movie_info['cover url']
            # Output to the AnswerObject
            NurfIMDBAnswerPosterURL = AnswerObject(title=MovieTitle,lines=[AnswerObjectLine(image=AnswerStringPosterURL)])
        
            #-- Get Rating --
            AnswerStringRating = str(movie_info['rating']) + "/10 (" + str(movie_info['votes']) + " votes)"
            # Output to the AnswerObject
            NurfIMDBAnswerRating = AnswerObject(title='Rating:',lines=[AnswerObjectLine(text=AnswerStringRating)]) 
                    
            #-- Get Plot --
            plot = movie_info['plot'][0].split('::')
            AnswerStringPlot = plot[0]
            # Output to the AnswerObject
            NurfIMDBAnswerPlot = AnswerObject(title='Plot:',lines=[AnswerObjectLine(text=AnswerStringPlot)]) 

            #-- Get Directors --
            AnswerStringDirectors = ''
            for director in movie_info['director']:
                AnswerStringDirectors = AnswerStringDirectors + director['name'] + ", "
            AnswerStringDirectors = AnswerStringDirectors.rstrip(',') #Remove the last comma from the answerstring
            # Output to the AnswerObject
            NurfIMDBAnswerDirectors = AnswerObject(title='Directors:',lines=[AnswerObjectLine(text=AnswerStringDirectors)]) 
                    
            #-- Get Writers --
            AnswerStringWriters = ''
            for writer in movie_info['writer']:
                AnswerStringWriters = AnswerStringWriters + writer['name'] + ", "
            AnswerStringWriters = AnswerStringWriters.rstrip(',') #Remove the last comma from the answerstring
            # Output to the AnswerObject
            NurfIMDBAnswerWriters = AnswerObject(title='Writers:',lines=[AnswerObjectLine(text=AnswerStringWriters)]) 
        
            # -- Get Cast --
            AnswerStringCast = ''
            for actor in movie_info['cast']:
                try:
                    AnswerStringCast = AnswerStringCast + actor['name'] + " (" + str(actor.currentRole['name']) + "), "
                except:
                    AnswerStringCast = AnswerStringCast + actor['name'] + ", "
            AnswerStringCast = AnswerStringCast.rstrip(',') #Remove the last comma from the answerstring
            # Output to the AnswerObject
            NurfIMDBAnswerCast = AnswerObject(title='Cast:',lines=[AnswerObjectLine(text=AnswerStringCast)]) 
        
            # -- Results --
            #Display the results
            view1 = AnswerSnippet(answers=[NurfIMDBAnswerPosterURL, NurfIMDBAnswerRating, NurfIMDBAnswerPlot, NurfIMDBAnswerDirectors,  NurfIMDBAnswerWriters,  NurfIMDBAnswerCast])
            view.views = [view1]
            self.sendRequestWithoutAnswer(view)
            self.complete_request()
Ejemplo n.º 10
0
 def addPictureView(self,title,image_url):
     view = AddViews(self.refId, dialogPhase="Completion")
     ImageAnswer = AnswerObject(title=title,lines=[AnswerObjectLine(image=image_url)])
     view1 = AnswerSnippet(answers=[ImageAnswer])
     view.views = [view1]
     self.sendRequestWithoutAnswer(view)