-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
164 lines (153 loc) · 4.97 KB
/
main.py
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
from src.utils.custom_types import category_label, taxonomy, category_pages
from src.category_manager import CategoryManager
from src.page_manager import PageManager
from src.content_manager import ContentManager
from src.loggers.log_utils import setup_logger
logger = setup_logger("")
def main():
positive_domains: list[category_label] = [
"Códigos jurídicos",
"Casos judiciales",
"Principios del derecho",
"Términos jurídicos",
"Derecho de Colombia",
"Rama Judicial de Colombia"
]
negative_domains: list[category_label] = [
"Deportes en Colombia por deporte",
"Turismo en Colombia",
"Arte de Colombia",
"Música de Colombia",
"Lenguas de Colombia",
"Religión en Colombia",
"Ciencia y tecnología de Colombia",
"Geografía de Colombia",
"Biodiversidad de Colombia",
"Geología de Colombia",
"Medio ambiente de Colombia",
"Etnias de Colombia",
"Etnografía de Colombia",
"Atracciones turísticas de Colombia",
"Cine de Colombia",
"Humor de Colombia",
"Medios de comunicación de Colombia",
"Educación en Colombia",
"Economía de Colombia",
"Educación por materia",
"Biología",
"Bioingeniería",
"Genómica",
"Ingeniería biomédica",
"Ciencias de la salud",
"Géneros y formas musicales",
"Cartografía",
"Geografía física",
"Conceptos físicos",
"Magnitudes físicas",
"Teorías físicas",
"Alimentos",
"Bebidas",
"Comidas",
"Nutrición",
"Vehículos por tipo",
"Atracciones turísticas",
"Bellas artes",
"Técnicas cinematográficas",
"Teoría cinematográfica",
"Terminología cinematográfica",
"Filosofía del lenguaje",
"Familias de lenguas",
"Terminología religiosa"
]
full_match_blacklist: list[category_label] = [
"Sharia",
"Error judicial",
"Personas",
"Referéndums",
"Abogados de Colombia",
"Crimen en Colombia",
"Juristas de Colombia",
"Muerte en Colombia",
"Policía de Colombia",
"Magistrados del Consejo de Estado de Colombia",
"Fiscal General de la Nación (Colombia)",
"Ministerio de Comercio, Industria y Turismo de Colombia",
"Educación jurídica",
"Derecho alimentario",
"Política alimentaria",
"Películas por género",
"Revisión judicial",
"Ciudadanía honoraria"
]
partial_match_blacklist: list[str] = [
"por país",
"LGBT",
"brujería",
"Anexos",
"por continente",
"por fecha",
"por siglo",
"por década",
"por año",
"por período",
"por país",
"por territorio",
"por departamento",
"por localidad",
"por región",
"Ministros",
"Presidentes",
"Gerentes",
"Directores",
"Actores",
"Actrices",
"Directoras"
]
header_id_blacklist: list[str] = [
"Notas",
"Referencias",
"Citas_y_referencias",
"Bibliografía",
"Enlaces_externos",
"Véase_también"
]
li_truncators: list[str] = [
"Proyectos Wikimedia",
"Identificadores",
"Diccionarios y enciclopedias"
]
degree = 2
# Positive Corpus
# category_manager_pos = CategoryManager(positive_domains, full_match_blacklist, partial_match_blacklist, degree)
# category_manager_pos.retrieve_taxonomies(prefix="a_positive_")
# taxonomies_pos: taxonomy = category_manager_pos.get_taxonomies()
# page_manager_pos = PageManager(taxonomies_pos, degree)
# page_manager_pos.retrieve_taxonomy_pages(prefix="a_positive_")
# pages_pos: category_pages = page_manager_pos.get_pages()
# content_manager_pos = ContentManager(
# pages_pos,
# taxonomies_pos,
# header_id_blacklist,
# li_truncators,
# degree,
# prefix="a_positive_"
# )
# content_manager_pos.retrieve_taxonomy_content()
# Negative Corpus
category_manager_neg = CategoryManager(negative_domains, full_match_blacklist, partial_match_blacklist, degree)
category_manager_neg.retrieve_taxonomies(prefix="b_negative_")
taxonomies_neg: taxonomy = category_manager_neg.get_taxonomies()
page_manager_neg = PageManager(taxonomies_neg, degree)
page_manager_neg.retrieve_taxonomy_pages(prefix="b_negative_")
pages_neg: category_pages = page_manager_neg.get_pages()
content_manager_neg = ContentManager(
pages_neg,
taxonomies_neg,
header_id_blacklist,
li_truncators,
degree,
prefix="b_negative_"
)
content_manager_neg.retrieve_taxonomy_content()
if __name__ == "__main__":
main()