def test_remover_hashtags_con_acento(self): tweet = Tweet() tweet.id = 301726981937057792 tweet.texto = "#DíaMundialDelOrgasmoFemenino Lol Respeten un poco Este TT es igual como" \ + " si fuese #ILoveReggaeton Que gracia siempre #CojenComoObjetoSexual" tweet.favoritos = 0 tweet.retweets = 71 tweet.es_humor = 1 tweet.cuenta = 142482558 self.assertEqual(remover_hashtags(tweet.texto), " Lol Respeten un poco Este TT es igual como si fuese Que gracia siempre ", "El texto sin los hashtags no es el esperado")
def test_remover_hashtags(self): tweet = Tweet() tweet.id = 301726981937057792 tweet.texto = "#DiaMundialDelOrgasmoFemenino Lol Respeten un poco Este TT es igual como" \ + " si fuese #ILoveReggaeton Que gracia siempre #CojenComoObjetoSexual" tweet.favoritos = 0 tweet.retweets = 71 tweet.es_humor = 1 tweet.cuenta = 142482558 self.assertEqual( remover_hashtags(tweet.texto), " Lol Respeten un poco Este TT es igual como si fuese Que gracia siempre ", "El texto sin los hashtags no es el esperado")
def calcular_feature(self, tweet): oraciones = Freeling.procesar_texto(remover_hashtags(remover_usuarios(tweet.texto))) tokens = Freeling.get_tokens_de_oraciones(oraciones) cant_antonimos = 0 for token in tokens: antonimos = [] for synset in self.wncr.synsets(token.lemma): for lemma in synset.lemmas(): antonimos += [lemma_antonimo.name() for lemma_antonimo in lemma.antonyms()] for otro_token in tokens: if otro_token.lemma in antonimos: cant_antonimos += 1 break if len(tokens) == 0: return 0 else: return cant_antonimos / math.sqrt(len(tokens)) / 2.0 # divido entre 2 para contar una vez cada par