Exemplo n.º 1
0
    def analyse(self, **kwargs):
        params = dict(kwargs)
        txt = params["input"]
        logger.info('TXT:%s' % txt)
        endpoint = params["endpoint"]
        lang = params.get("language")
        key = params["apiKey"]
        sentiplug = params["sentiments-plugin"]
        s_params = params.copy()
        s_params.update({'algo':sentiplug,'language':lang, 'meaningCloud-key':key})
        senti_response = requests.get(endpoint, params=s_params).json()
        logger.info('SENTIPARAMS: %s' % s_params)
        logger.info('SENTIRESPONSE: %s' % senti_response)
        if 'entries' not in senti_response:
            raise Error(senti_response)
        senti_response = Results(senti_response)
        logger.info('SENTI: %s' % senti_response)
        logger.info(senti_response)
        emoplug = params["emotions-plugin"]
        e_params = params.copy()
        e_params.update({'algo':emoplug,'language':lang})
        emo_response = requests.get(endpoint, params=e_params).json()
        if 'entries' not in emo_response:
            raise Error(emo_response)
        emo_response = Results(emo_response)
        logger.info('EMO: %s' % emo_response)
        logger.info(emo_response)



        
        #Senpy Response
        response = Results()
        response.analysis = [senti_response.analysis, emo_response.analysis]
        unified = senti_response.entries[0]
        unified["emotions"] = emo_response.entries[0]["emotions"]
        response.entries.append(unified)

        return response