Add loader and processor modules with documentation and output files

- Implemented loader in `modules/loader.py` to download HTML pages using curl and urllib.
- Created processor in `modules/processor.py` for processing the text of the Russian Criminal Code (УК РФ).
- Added README files for both loader and processor explaining their functionality and usage.
- Generated output files including original text, prepared text, and subject index in CSV and JSON formats.
This commit is contained in:
Dmitry
2026-04-16 21:38:00 +03:00
parent 502f48a279
commit 0b41577a42
15 changed files with 8770 additions and 103 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+101
View File
@@ -0,0 +1,101 @@
word;count;line;char;source_word
срок;3342;34;151;срок
размер;2024;136;25;размере
лишение;1843;31;183;лишения
свобода;1563;3;53;свобод
определенный;1399;120;24;определенные
иной;1267;4;241;иные
лицо;1224;7;1;Лица
наказываться;1084;493;1;наказывается
работа;1080;122;14;работы
осудить;973;25;746;осуждены
таковой;942;409;174;таковых
штраф;899;119;1;штраф
период;873;136;135;период
доход;864;136;113;дохода
деятельность;824;53;752;деятельности
заработный;808;136;86;заработной
плата;808;136;97;платы
право;797;2;118;права
должность;704;120;37;должности
преступление;696;3;309;преступлений
занимать;694;120;15;занимать
заниматься;682;120;51;заниматься
принудительный;659;56;135;принудительные
деяние;657;4;174;деяния
совершенный;578;20;15;совершенные
предусмотренный;474;14;113;предусмотренного
ограничение;447;116;223;ограничении
группа;410;85;144;группу
наказание;406;4;229;наказаний
средство;353;53;541;средством
крупный;338;848;122;крупных
совершение;329;4;283;совершение
обязательный;261;114;116;обязательных
организация;250;53;870;организацию
повлечь;248;546;68;повлекшие
тяжкий;237;30;185;тяжкие
использование;234;84;221;использования
исправительный;229;123;1;исправительные
совершить;228;7;7;совершившие
отношение;213;7;213;отношения
действие;206;8;74;действия
цель;204;13;121;целью
государственный;188;53;2031;государственного
равно;187;85;107;равно
сумма;185;136;229;сумме
применение;184;6;1;Применение
предусмотреть;184;18;133;предусмотренных
организовать;183;85;32;организовавшее
уголовный;180;1;1;Уголовное
особо;178;30;207;особо
суд;175;23;349;суда
предварительный;165;93;124;предварительного
военный;163;21;401;военном
незаконный;162;53;1199;незаконном
случай;161;22;141;случае
сговор;161;74;174;сговор
примечание;159;296;1;Примечание
ответственность;156;1;122;ответственность
арест;156;127;1;арест
причинение;151;9;71;причинение
неосторожность;143;60;78;неосторожности
ущерб;142;204;135;ущерба
признаваться;141;4;181;признаются
заведомо;141;53;1130;заведомо
другой;138;7;297;других
несовершеннолетний;138;54;6;несовершеннолетний
вред;137;9;82;вреда
положение;134;7;184;положения
орган;133;80;135;органам
имущество;131;53;621;имущества
вещество;131;53;1607;веществ
вид;127;4;224;виды
служба;126;124;24;службе
информация;125;87;107;информации
здоровье;124;53;179;здоровью
указанный;118;35;337;указанного
нарушение;118;201;29;нарушении
сеть;117;230;147;сетях
человек;116;3;60;человека
последствие;112;5;72;последствия
служебный;110;104;139;служебного
административный;107;298;288;административной
гражданин;106;3;71;гражданина
подкуп;106;86;97;подкупа
превышать;105;31;164;превышает
денежный;105;135;12;денежное
смерть;104;492;41;смерти
законодательство;101;1;11;законодательство
число;101;17;274;числе
насилие;101;101;295;насилием
иностранный;98;22;68;иностранных
характер;94;4;270;характера
соответствие;92;22;234;соответствии
отбывание;92;27;246;отбывания
угроза;92;28;109;угрозой
возраст;89;48;48;возрасте
медицинский;87;56;155;медицинского
должностной;86;7;171;должностного
условие;86;35;296;условии
оружие;86;53;1764;оружия
1 word count line char source_word
2 срок 3342 34 151 срок
3 размер 2024 136 25 размере
4 лишение 1843 31 183 лишения
5 свобода 1563 3 53 свобод
6 определенный 1399 120 24 определенные
7 иной 1267 4 241 иные
8 лицо 1224 7 1 Лица
9 наказываться 1084 493 1 наказывается
10 работа 1080 122 14 работы
11 осудить 973 25 746 осуждены
12 таковой 942 409 174 таковых
13 штраф 899 119 1 штраф
14 период 873 136 135 период
15 доход 864 136 113 дохода
16 деятельность 824 53 752 деятельности
17 заработный 808 136 86 заработной
18 плата 808 136 97 платы
19 право 797 2 118 права
20 должность 704 120 37 должности
21 преступление 696 3 309 преступлений
22 занимать 694 120 15 занимать
23 заниматься 682 120 51 заниматься
24 принудительный 659 56 135 принудительные
25 деяние 657 4 174 деяния
26 совершенный 578 20 15 совершенные
27 предусмотренный 474 14 113 предусмотренного
28 ограничение 447 116 223 ограничении
29 группа 410 85 144 группу
30 наказание 406 4 229 наказаний
31 средство 353 53 541 средством
32 крупный 338 848 122 крупных
33 совершение 329 4 283 совершение
34 обязательный 261 114 116 обязательных
35 организация 250 53 870 организацию
36 повлечь 248 546 68 повлекшие
37 тяжкий 237 30 185 тяжкие
38 использование 234 84 221 использования
39 исправительный 229 123 1 исправительные
40 совершить 228 7 7 совершившие
41 отношение 213 7 213 отношения
42 действие 206 8 74 действия
43 цель 204 13 121 целью
44 государственный 188 53 2031 государственного
45 равно 187 85 107 равно
46 сумма 185 136 229 сумме
47 применение 184 6 1 Применение
48 предусмотреть 184 18 133 предусмотренных
49 организовать 183 85 32 организовавшее
50 уголовный 180 1 1 Уголовное
51 особо 178 30 207 особо
52 суд 175 23 349 суда
53 предварительный 165 93 124 предварительного
54 военный 163 21 401 военном
55 незаконный 162 53 1199 незаконном
56 случай 161 22 141 случае
57 сговор 161 74 174 сговор
58 примечание 159 296 1 Примечание
59 ответственность 156 1 122 ответственность
60 арест 156 127 1 арест
61 причинение 151 9 71 причинение
62 неосторожность 143 60 78 неосторожности
63 ущерб 142 204 135 ущерба
64 признаваться 141 4 181 признаются
65 заведомо 141 53 1130 заведомо
66 другой 138 7 297 других
67 несовершеннолетний 138 54 6 несовершеннолетний
68 вред 137 9 82 вреда
69 положение 134 7 184 положения
70 орган 133 80 135 органам
71 имущество 131 53 621 имущества
72 вещество 131 53 1607 веществ
73 вид 127 4 224 виды
74 служба 126 124 24 службе
75 информация 125 87 107 информации
76 здоровье 124 53 179 здоровью
77 указанный 118 35 337 указанного
78 нарушение 118 201 29 нарушении
79 сеть 117 230 147 сетях
80 человек 116 3 60 человека
81 последствие 112 5 72 последствия
82 служебный 110 104 139 служебного
83 административный 107 298 288 административной
84 гражданин 106 3 71 гражданина
85 подкуп 106 86 97 подкупа
86 превышать 105 31 164 превышает
87 денежный 105 135 12 денежное
88 смерть 104 492 41 смерти
89 законодательство 101 1 11 законодательство
90 число 101 17 274 числе
91 насилие 101 101 295 насилием
92 иностранный 98 22 68 иностранных
93 характер 94 4 270 характера
94 соответствие 92 22 234 соответствии
95 отбывание 92 27 246 отбывания
96 угроза 92 28 109 угрозой
97 возраст 89 48 48 возрасте
98 медицинский 87 56 155 медицинского
99 должностной 86 7 171 должностного
100 условие 86 35 296 условии
101 оружие 86 53 1764 оружия
+702
View File
@@ -0,0 +1,702 @@
[
{
"word": "срок",
"count": 3342,
"line": 34,
"char": 151,
"source_word": "срок"
},
{
"word": "размер",
"count": 2024,
"line": 136,
"char": 25,
"source_word": "размере"
},
{
"word": "лишение",
"count": 1843,
"line": 31,
"char": 183,
"source_word": "лишения"
},
{
"word": "свобода",
"count": 1563,
"line": 3,
"char": 53,
"source_word": "свобод"
},
{
"word": "определенный",
"count": 1399,
"line": 120,
"char": 24,
"source_word": "определенные"
},
{
"word": "иной",
"count": 1267,
"line": 4,
"char": 241,
"source_word": "иные"
},
{
"word": "лицо",
"count": 1224,
"line": 7,
"char": 1,
"source_word": "Лица"
},
{
"word": "наказываться",
"count": 1084,
"line": 493,
"char": 1,
"source_word": "наказывается"
},
{
"word": "работа",
"count": 1080,
"line": 122,
"char": 14,
"source_word": "работы"
},
{
"word": "осудить",
"count": 973,
"line": 25,
"char": 746,
"source_word": "осуждены"
},
{
"word": "таковой",
"count": 942,
"line": 409,
"char": 174,
"source_word": "таковых"
},
{
"word": "штраф",
"count": 899,
"line": 119,
"char": 1,
"source_word": "штраф"
},
{
"word": "период",
"count": 873,
"line": 136,
"char": 135,
"source_word": "период"
},
{
"word": "доход",
"count": 864,
"line": 136,
"char": 113,
"source_word": "дохода"
},
{
"word": "деятельность",
"count": 824,
"line": 53,
"char": 752,
"source_word": "деятельности"
},
{
"word": "заработный",
"count": 808,
"line": 136,
"char": 86,
"source_word": "заработной"
},
{
"word": "плата",
"count": 808,
"line": 136,
"char": 97,
"source_word": "платы"
},
{
"word": "право",
"count": 797,
"line": 2,
"char": 118,
"source_word": "права"
},
{
"word": "должность",
"count": 704,
"line": 120,
"char": 37,
"source_word": "должности"
},
{
"word": "преступление",
"count": 696,
"line": 3,
"char": 309,
"source_word": "преступлений"
},
{
"word": "занимать",
"count": 694,
"line": 120,
"char": 15,
"source_word": "занимать"
},
{
"word": "заниматься",
"count": 682,
"line": 120,
"char": 51,
"source_word": "заниматься"
},
{
"word": "принудительный",
"count": 659,
"line": 56,
"char": 135,
"source_word": "принудительные"
},
{
"word": "деяние",
"count": 657,
"line": 4,
"char": 174,
"source_word": "деяния"
},
{
"word": "совершенный",
"count": 578,
"line": 20,
"char": 15,
"source_word": "совершенные"
},
{
"word": "предусмотренный",
"count": 474,
"line": 14,
"char": 113,
"source_word": "предусмотренного"
},
{
"word": "ограничение",
"count": 447,
"line": 116,
"char": 223,
"source_word": "ограничении"
},
{
"word": "группа",
"count": 410,
"line": 85,
"char": 144,
"source_word": "группу"
},
{
"word": "наказание",
"count": 406,
"line": 4,
"char": 229,
"source_word": "наказаний"
},
{
"word": "средство",
"count": 353,
"line": 53,
"char": 541,
"source_word": "средством"
},
{
"word": "крупный",
"count": 338,
"line": 848,
"char": 122,
"source_word": "крупных"
},
{
"word": "совершение",
"count": 329,
"line": 4,
"char": 283,
"source_word": "совершение"
},
{
"word": "обязательный",
"count": 261,
"line": 114,
"char": 116,
"source_word": "обязательных"
},
{
"word": "организация",
"count": 250,
"line": 53,
"char": 870,
"source_word": "организацию"
},
{
"word": "повлечь",
"count": 248,
"line": 546,
"char": 68,
"source_word": "повлекшие"
},
{
"word": "тяжкий",
"count": 237,
"line": 30,
"char": 185,
"source_word": "тяжкие"
},
{
"word": "использование",
"count": 234,
"line": 84,
"char": 221,
"source_word": "использования"
},
{
"word": "исправительный",
"count": 229,
"line": 123,
"char": 1,
"source_word": "исправительные"
},
{
"word": "совершить",
"count": 228,
"line": 7,
"char": 7,
"source_word": "совершившие"
},
{
"word": "отношение",
"count": 213,
"line": 7,
"char": 213,
"source_word": "отношения"
},
{
"word": "действие",
"count": 206,
"line": 8,
"char": 74,
"source_word": "действия"
},
{
"word": "цель",
"count": 204,
"line": 13,
"char": 121,
"source_word": "целью"
},
{
"word": "государственный",
"count": 188,
"line": 53,
"char": 2031,
"source_word": "государственного"
},
{
"word": "равно",
"count": 187,
"line": 85,
"char": 107,
"source_word": "равно"
},
{
"word": "сумма",
"count": 185,
"line": 136,
"char": 229,
"source_word": "сумме"
},
{
"word": "применение",
"count": 184,
"line": 6,
"char": 1,
"source_word": "Применение"
},
{
"word": "предусмотреть",
"count": 184,
"line": 18,
"char": 133,
"source_word": "предусмотренных"
},
{
"word": "организовать",
"count": 183,
"line": 85,
"char": 32,
"source_word": "организовавшее"
},
{
"word": "уголовный",
"count": 180,
"line": 1,
"char": 1,
"source_word": "Уголовное"
},
{
"word": "особо",
"count": 178,
"line": 30,
"char": 207,
"source_word": "особо"
},
{
"word": "суд",
"count": 175,
"line": 23,
"char": 349,
"source_word": "суда"
},
{
"word": "предварительный",
"count": 165,
"line": 93,
"char": 124,
"source_word": "предварительного"
},
{
"word": "военный",
"count": 163,
"line": 21,
"char": 401,
"source_word": "военном"
},
{
"word": "незаконный",
"count": 162,
"line": 53,
"char": 1199,
"source_word": "незаконном"
},
{
"word": "случай",
"count": 161,
"line": 22,
"char": 141,
"source_word": "случае"
},
{
"word": "сговор",
"count": 161,
"line": 74,
"char": 174,
"source_word": "сговор"
},
{
"word": "примечание",
"count": 159,
"line": 296,
"char": 1,
"source_word": "Примечание"
},
{
"word": "ответственность",
"count": 156,
"line": 1,
"char": 122,
"source_word": "ответственность"
},
{
"word": "арест",
"count": 156,
"line": 127,
"char": 1,
"source_word": "арест"
},
{
"word": "причинение",
"count": 151,
"line": 9,
"char": 71,
"source_word": "причинение"
},
{
"word": "неосторожность",
"count": 143,
"line": 60,
"char": 78,
"source_word": "неосторожности"
},
{
"word": "ущерб",
"count": 142,
"line": 204,
"char": 135,
"source_word": "ущерба"
},
{
"word": "признаваться",
"count": 141,
"line": 4,
"char": 181,
"source_word": "признаются"
},
{
"word": "заведомо",
"count": 141,
"line": 53,
"char": 1130,
"source_word": "заведомо"
},
{
"word": "другой",
"count": 138,
"line": 7,
"char": 297,
"source_word": "других"
},
{
"word": "несовершеннолетний",
"count": 138,
"line": 54,
"char": 6,
"source_word": "несовершеннолетний"
},
{
"word": "вред",
"count": 137,
"line": 9,
"char": 82,
"source_word": "вреда"
},
{
"word": "положение",
"count": 134,
"line": 7,
"char": 184,
"source_word": "положения"
},
{
"word": "орган",
"count": 133,
"line": 80,
"char": 135,
"source_word": "органам"
},
{
"word": "имущество",
"count": 131,
"line": 53,
"char": 621,
"source_word": "имущества"
},
{
"word": "вещество",
"count": 131,
"line": 53,
"char": 1607,
"source_word": "веществ"
},
{
"word": "вид",
"count": 127,
"line": 4,
"char": 224,
"source_word": "виды"
},
{
"word": "служба",
"count": 126,
"line": 124,
"char": 24,
"source_word": "службе"
},
{
"word": "информация",
"count": 125,
"line": 87,
"char": 107,
"source_word": "информации"
},
{
"word": "здоровье",
"count": 124,
"line": 53,
"char": 179,
"source_word": "здоровью"
},
{
"word": "указанный",
"count": 118,
"line": 35,
"char": 337,
"source_word": "указанного"
},
{
"word": "нарушение",
"count": 118,
"line": 201,
"char": 29,
"source_word": "нарушении"
},
{
"word": "сеть",
"count": 117,
"line": 230,
"char": 147,
"source_word": "сетях"
},
{
"word": "человек",
"count": 116,
"line": 3,
"char": 60,
"source_word": "человека"
},
{
"word": "последствие",
"count": 112,
"line": 5,
"char": 72,
"source_word": "последствия"
},
{
"word": "служебный",
"count": 110,
"line": 104,
"char": 139,
"source_word": "служебного"
},
{
"word": "административный",
"count": 107,
"line": 298,
"char": 288,
"source_word": "административной"
},
{
"word": "гражданин",
"count": 106,
"line": 3,
"char": 71,
"source_word": "гражданина"
},
{
"word": "подкуп",
"count": 106,
"line": 86,
"char": 97,
"source_word": "подкупа"
},
{
"word": "превышать",
"count": 105,
"line": 31,
"char": 164,
"source_word": "превышает"
},
{
"word": "денежный",
"count": 105,
"line": 135,
"char": 12,
"source_word": "денежное"
},
{
"word": "смерть",
"count": 104,
"line": 492,
"char": 41,
"source_word": "смерти"
},
{
"word": "законодательство",
"count": 101,
"line": 1,
"char": 11,
"source_word": "законодательство"
},
{
"word": "число",
"count": 101,
"line": 17,
"char": 274,
"source_word": "числе"
},
{
"word": "насилие",
"count": 101,
"line": 101,
"char": 295,
"source_word": "насилием"
},
{
"word": "иностранный",
"count": 98,
"line": 22,
"char": 68,
"source_word": "иностранных"
},
{
"word": "характер",
"count": 94,
"line": 4,
"char": 270,
"source_word": "характера"
},
{
"word": "соответствие",
"count": 92,
"line": 22,
"char": 234,
"source_word": "соответствии"
},
{
"word": "отбывание",
"count": 92,
"line": 27,
"char": 246,
"source_word": "отбывания"
},
{
"word": "угроза",
"count": 92,
"line": 28,
"char": 109,
"source_word": "угрозой"
},
{
"word": "возраст",
"count": 89,
"line": 48,
"char": 48,
"source_word": "возрасте"
},
{
"word": "медицинский",
"count": 87,
"line": 56,
"char": 155,
"source_word": "медицинского"
},
{
"word": "должностной",
"count": 86,
"line": 7,
"char": 171,
"source_word": "должностного"
},
{
"word": "условие",
"count": 86,
"line": 35,
"char": 296,
"source_word": "условии"
},
{
"word": "оружие",
"count": 86,
"line": 53,
"char": 1764,
"source_word": "оружия"
}
]