File size: 1,337 Bytes
b514fe8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/usr/bin/env python3

"""
Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
"""
import spacy
import logging

class EntityExtractor:
    """
    Classe para extrair entidades de um texto usando o framework Spacy.
    """
    def __init__(self, language_model="pt_core_news_sm"):
        """
        Inicializa a classe com o modelo de linguagem desejado.
        """
        self.nlp = spacy.load(language_model)
        logging.basicConfig(level=logging.INFO)

    def extract_entities(self, text):
        """
        Extrai entidades do texto fornecido.
        """
        # Processa o texto com o modelo de linguagem
        doc = self.nlp(text)

        # Cria um dicionário para armazenar as entidades
        entities = {}

        # Itera sobre as entidades no texto
        for ent in doc.ents:
            # Adiciona a entidade ao dicionário
            entities[ent.text] = ent.label_

        # Loga as entidades extraídas
        logging.info(f"O método da classe (extract_entities) extraiu as Entidades: {entities}")

        return entities
    
    
if __name__ == "__main__":
    text= "A Apple Inc. foi fundada por Steve Jobs e Steve Wozniak em 1976."
    entidade = EntityExtractor()
    extraindo_Entity = entidade.extract_entities(text)
    print("\033[1;33mEntidades extraídades -->\033[m", extraindo_Entity)