EddyGiusepe commited on
Commit
b514fe8
1 Parent(s): 6952ab9

Usando a Biblioteca logging

Browse files
Files changed (4) hide show
  1. .gitignore +2 -0
  2. 1_using_logging.py +35 -0
  3. 2_using_logging.py +45 -0
  4. 3_using_logging.py +47 -0
.gitignore ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ # EddyGiusepe
2
+ venv_logging/
1_using_logging.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+
3
+ """
4
+ Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
5
+ """
6
+ import spacy
7
+ import logging
8
+
9
+ # Configuração do logging:
10
+ #logging.basicConfig(filename='app.log', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s') # com DEBUG gerará uma pasta 🤗
11
+ logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
12
+
13
+ def extract_entities(text):
14
+ logging.info("Iniciando a extração de entidades")
15
+
16
+ # Carregar o modelo do SpaCy:
17
+ nlp = spacy.load("pt_core_news_sm")
18
+
19
+ # Processar o texto com o modelo pré-treinado;
20
+ doc = nlp(text)
21
+
22
+ # Extrair e logar as entidades encontradas
23
+ entities = []
24
+ for ent in doc.ents:
25
+ entities.append((ent.text, ent.label_))
26
+ logging.debug(f"Entidade encontrada: {ent.text} - Tipo: {ent.label_}")
27
+
28
+ logging.info("Extração de entidades concluída")
29
+ return entities
30
+
31
+
32
+ if __name__ == "__main__":
33
+ text = "A Apple Inc. foi fundada por Steve Jobs e Steve Wozniak em 1976."
34
+ extracted_entities = extract_entities(text)
35
+ print("Entidades extraídas:", extracted_entities)
2_using_logging.py ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+
3
+ """
4
+ Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
5
+ """
6
+ import spacy
7
+ import logging
8
+
9
+ class EntityExtractor:
10
+ """
11
+ Classe para extrair entidades de um texto usando o framework Spacy.
12
+ """
13
+ def __init__(self, language_model="pt_core_news_sm"):
14
+ """
15
+ Inicializa a classe com o modelo de linguagem desejado.
16
+ """
17
+ self.nlp = spacy.load(language_model)
18
+ logging.basicConfig(level=logging.INFO)
19
+
20
+ def extract_entities(self, text):
21
+ """
22
+ Extrai entidades do texto fornecido.
23
+ """
24
+ # Processa o texto com o modelo de linguagem
25
+ doc = self.nlp(text)
26
+
27
+ # Cria um dicionário para armazenar as entidades
28
+ entities = {}
29
+
30
+ # Itera sobre as entidades no texto
31
+ for ent in doc.ents:
32
+ # Adiciona a entidade ao dicionário
33
+ entities[ent.text] = ent.label_
34
+
35
+ # Loga as entidades extraídas
36
+ logging.info(f"O método da classe (extract_entities) extraiu as Entidades: {entities}")
37
+
38
+ return entities
39
+
40
+
41
+ if __name__ == "__main__":
42
+ text= "A Apple Inc. foi fundada por Steve Jobs e Steve Wozniak em 1976."
43
+ entidade = EntityExtractor()
44
+ extraindo_Entity = entidade.extract_entities(text)
45
+ print("\033[1;33mEntidades extraídades -->\033[m", extraindo_Entity)
3_using_logging.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+
3
+ """
4
+ Data Scientist.: Dr.Eddy Giusepe Chirinos Isidro
5
+ """
6
+ import spacy
7
+ import logging
8
+
9
+ # Configurando o logging
10
+ logging.basicConfig(level=logging.INFO)
11
+
12
+ class EntityRecognizer:
13
+ """
14
+ Classe para reconhecimento de entidades usando a biblioteca Spacy.
15
+ """
16
+ def __init__(self):
17
+ """
18
+ Inicializa a classe com o texto a ser analisado.
19
+ """
20
+ self.nlp = spacy.load('pt_core_news_sm')
21
+
22
+ def recognize(self, text):
23
+ """
24
+ Reconhece as entidades no texto.
25
+ """
26
+ doc = self.nlp(text)
27
+
28
+ entities ={}
29
+ # Verifica se existem entidades no texto
30
+ if doc.ents:
31
+ logging.info('Entidades encontradas:')
32
+ for ent in doc.ents:
33
+ entities[ent.text] = ent.label_
34
+
35
+ else:
36
+ logging.info('Nenhuma entidade encontrada.')
37
+ print("O texto não contém Entidades 🤗!")
38
+
39
+ return entities
40
+
41
+
42
+ if __name__ == "__main__":
43
+ # Exemplo de uso:
44
+ recognizer = EntityRecognizer()
45
+ text = 'A Karina é cientista de dados!'
46
+ entidades = recognizer.recognize(text)
47
+ print(entidades)