feat: GTS token, oprava manual_accounts.csv, odstranění masto.arch

This commit is contained in:
2026-04-02 21:12:39 +02:00
parent 96349e22d3
commit 62043c431c
4 changed files with 1869 additions and 199 deletions
+107 -7
View File
@@ -1,6 +1,7 @@
Account address,Show boosts
FilipHorky@mastodonczech.cz,true
alexandrmitrofa@mastodonczech.cz,true
medvidekpu@mastodon.social,true
petrkou@mastodonczech.cz,true
ivanbartos@mastodon.pirati.cz,true
xChaos@f.cz,true
@@ -12,52 +13,64 @@ OliKockova@cztwitter.cz,true
rozanek@mastodonczech.cz,true
nolog@witter.cz,true
kayla_eilhart@witter.cz,true
fuxoft@kompost.cz,true
BohumilVostal@mastodonczech.cz,true
filiptitlbach@mastodonczech.cz,true
boninska@cztwitter.cz,true
365tipu@mastodonczech.cz,true
archos@gts.arch-linux.cz,true
rychlofky@mastodonczech.cz,true
evapavlikova@mastodon.social,true
parlamentnizpravycz@mastodonczech.cz,true
danielsnor@mastodon.social,true
petra_bohemica@mastodon.social,true
Pirati@mastodon.pirati.cz,true
zandl@mastodon.pirati.cz,true
fabia_man@mamutovo.cz,true
Roman_M@cztwitter.cz,true
marekl@mastodonczech.cz,true
marketkag@mastodon.pirati.cz,true
plsik@mastodon.social,true
VladaFoltan@mastodonczech.cz,true
bohdandlouhy@mastodonczech.cz,true
Apolenarychlikova@witter.cz,true
beneslenka@mastodonczech.cz,true
byczech@witter.cz,true
michal@spondr.cz,true
zoul@boskovice.social,true
tymoty@f.cz,true
jackc@kompost.cz,true
OttovonWenkoff@mastodonczech.cz,true
Unreed@mastodonczech.cz,true
lupa@mastodonczech.cz,true
TomasFriedl@mastodonczech.cz,true
trnk_c@witter.cz,true
tombarys@mastodon.social,true
sumavanet@mastodonczech.cz,true
honzakorinek@cztwitter.cz,true
rezzabuh@mastodon.social,true
fipa@mastodonczech.cz,true
zbiejczuk@mastodonczech.cz,true
Otakar_Brabec@cztwitter.cz,true
blataak@mastodonczech.cz,true
hajma@cztwitter.cz,true
piskvor@cztwitter.cz,true
hajma@cztwitter.cz,true
zechy@mastodonczech.cz,true
piratzbrna@mastodonczech.cz,true
paveljanicek@mamutovo.cz,true
porucikPihrt@cztwitter.cz,true
openalt@mastodon.social,true
s_kavou_v_ruce@cztwitter.cz,true
mskalick@witter.cz,true
satai@mathstodon.xyz,true
fandasin@social.linux.pizza,true
prrejpal@cztwitter.cz,true
margo@mastodon.arch-linux.cz,true
infoekcz@mamutovo.cz,true
baadvo@mastodonczech.cz,true
cernejpudinkcz@mastodonczech.cz,true
simindr@mastodonczech.cz,true
DivkaVModrem@cztwitter.cz,true
kalendar@mastodon.arch-linux.cz,true
lynxbaal@ohai.social,true
madla@mastodonczech.cz,true
ChorozonX@cztwitter.cz,true
xmirek@mastodonczech.cz,true
@@ -65,14 +78,13 @@ czstatistika@mastodonczech.cz,true
technotramp@mastodonczech.cz,true
DamianVCechov@cztwitter.cz,true
andrej@mastodon.pirati.cz,true
vitex@f.cz,true
KaterinaGloserova@mastodonczech.cz,true
vitex@f.cz,true
bycx@mastodonczech.cz,true
medidekpu@cztwitter.cz,true
janmelvil@mastodonczech.cz,true
Jankajanicka0@cztwitter.cz,true
Erdela@mastodonczech.cz,true
Ilusie@mastodon.arch-linux.cz,true
otecfura@witter.cz,true
Lenislavka@mastodonczech.cz,true
caragraph@f.cz,true
@@ -84,14 +96,15 @@ xcabal05@mamutovo.cz,true
babaq@mastodonczech.cz,true
tatageek@witter.cz,true
medvjed@witter.cz,true
Petr90@mamutovo.cz,true
jachym@mastodonczech.cz,true
Neovlivnicz@witter.cz,true
Petr90@mamutovo.cz,true
dan@ajtaci.club,true
honzajavorek@mastodonczech.cz,true
PavelUngr@mastodonczech.cz,true
tomulinek@mastodonczech.cz,true
backorka@cztwitter.cz,true
Onqa6@mastodon.arch-linux.cz,true
krcmar@mastodon.social,true
Razemix@mamutovo.cz,true
amarok@mastodonczech.cz,true
OpalkovaH@cztwitter.cz,true
@@ -99,3 +112,90 @@ anlexcz@witter.cz,true
tomasmartinek@mastodon.pirati.cz,true
lacertacz@mastodonczech.cz,true
sibik@mastodonczech.cz,true
srandista@mastodonczech.cz,true
algebraicterror@witter.cz,true
gavinnyoriginal@cztwitter.cz,true
pavelkout@mastodonczech.cz,true
politiq@mastodon.arch-linux.cz,true
Lady_Catlion@cztwitter.cz,true
koniash@cztwitter.cz,true
aikencz@f.cz,true
sandruska93@mas.to,true
KarelCapek@mastodonczech.cz,true
dotekomanie@mastodonczech.cz,true
wuwej@mastodonczech.cz,true
banterCZ@witter.cz,true
stepan@f.cz,true
Ondrejnovak@mastodonczech.cz,true
bobcap@witter.cz,true
Yamato@mastodonczech.cz,true
zuzanavlasata@mastodonczech.cz,true
mkyral@mastodonczech.cz,true
JanPetrus@cztwitter.cz,true
jakub_neruda@techhub.social,true
pavlas@mastodon.social,true
mysikralovna@mastodonczech.cz,true
Medojedka@cztwitter.cz,true
logout@mastodonczech.cz,true
Andreas@mastodonczech.cz,true
kolektiv115@witter.cz,true
loar@witter.cz,true
programydovoleb@cztwitter.cz,true
jaandrle@fosstodon.org,true
af@witter.cz,true
minimax@mastodonczech.cz,true
milan@mastodonczech.cz,true
cynik_obecny@mamutovo.cz,true
EP_prehledne@mastodon.pirati.cz,true
milosb@cztwitter.cz,true
Fencer@mastodonczech.cz,true
josefpatocka@witter.cz,true
MarekPavlis@mastodonczech.cz,true
daliborzz@witter.cz,true
oschon@mastodonczech.cz,true
hynekolog@witter.cz,true
theron29@witter.cz,true
dnesnaukrajine@f.cz,true
Salix@mastodonczech.cz,true
Jann@mastodonczech.cz,true
lubosblazek@mamutovo.cz,true
VerUhlir@mastodonczech.cz,true
calavera@witter.cz,true
Zettl_josef@mamutovo.cz,true
birdlifecz@mastodonczech.cz,true
Wolf70@mamutovo.cz,true
rholas@mamutovo.cz,true
donbahno@mastodonczech.cz,true
fotovoltaika@mastodonczech.cz,true
pirati_sck@mastodon.pirati.cz,true
vsa@mamutovo.cz,true
neskaut@mastodonczech.cz,true
eurobubba@mastodonczech.cz,true
sedmagenerace@mastodonczech.cz,true
pelikanekcz@mastodonczech.cz,true
martindrtina@mastodonczech.cz,true
white_monkey@witter.cz,true
elix@mastodonczech.cz,true
LazzLazz@witter.cz,true
OnlyFester@cztwitter.cz,true
baghira@witter.cz,true
david_melden@cztwitter.cz,true
bikepacking@mastodonczech.cz,true
Ibidem@mastodonczech.cz,true
lifehacky@mastodonczech.cz,true
jaroslav73@cztwitter.cz,true
ondras@cztwitter.cz,true
JaromirSramek@mastodonczech.cz,true
ferda@f.cz,true
elfkam@mastodonczech.cz,true
michal@vltava.cloud,true
jana_kinc@cztwitter.cz,true
radiotata@mastodonczech.cz,true
jirismika@mastodon.social,true
TramPhotos@mastodonczech.cz,true
m_tremcinsky@witter.cz,true
davede@mastodonczech.cz,true
Miha@cztwitter.cz,true
Magda@cztwitter.cz,true
Nox@cztwitter.cz,true
danielmilde@mastodonczech.cz,true
1 Account address Show boosts
2 FilipHorky@mastodonczech.cz true
3 alexandrmitrofa@mastodonczech.cz true
4 medvidekpu@mastodon.social true
5 petrkou@mastodonczech.cz true
6 ivanbartos@mastodon.pirati.cz true
7 xChaos@f.cz true
13 rozanek@mastodonczech.cz true
14 nolog@witter.cz true
15 kayla_eilhart@witter.cz true
16 fuxoft@kompost.cz true
17 BohumilVostal@mastodonczech.cz true
18 filiptitlbach@mastodonczech.cz true
19 boninska@cztwitter.cz true
20 365tipu@mastodonczech.cz true
21 archos@gts.arch-linux.cz true
22 rychlofky@mastodonczech.cz true
23 evapavlikova@mastodon.social true
24 parlamentnizpravycz@mastodonczech.cz true
25 danielsnor@mastodon.social true
26 petra_bohemica@mastodon.social true
27 Pirati@mastodon.pirati.cz true
28 zandl@mastodon.pirati.cz true
29 fabia_man@mamutovo.cz true
30 Roman_M@cztwitter.cz true
31 marekl@mastodonczech.cz true
32 marketkag@mastodon.pirati.cz true
33 plsik@mastodon.social true
34 VladaFoltan@mastodonczech.cz true
35 bohdandlouhy@mastodonczech.cz true
36 Apolenarychlikova@witter.cz true
37 beneslenka@mastodonczech.cz true
38 byczech@witter.cz true
39 michal@spondr.cz true
40 zoul@boskovice.social true
41 tymoty@f.cz true
42 jackc@kompost.cz true
43 OttovonWenkoff@mastodonczech.cz true
44 Unreed@mastodonczech.cz true
45 lupa@mastodonczech.cz true
46 TomasFriedl@mastodonczech.cz true
47 trnk_c@witter.cz true
48 tombarys@mastodon.social true
49 sumavanet@mastodonczech.cz true
50 honzakorinek@cztwitter.cz true
51 rezzabuh@mastodon.social true
52 fipa@mastodonczech.cz true
53 zbiejczuk@mastodonczech.cz true
54 Otakar_Brabec@cztwitter.cz true
55 blataak@mastodonczech.cz true
hajma@cztwitter.cz true
56 piskvor@cztwitter.cz true
57 hajma@cztwitter.cz true
58 zechy@mastodonczech.cz true
59 piratzbrna@mastodonczech.cz true
60 paveljanicek@mamutovo.cz true
61 porucikPihrt@cztwitter.cz true
62 openalt@mastodon.social true
63 s_kavou_v_ruce@cztwitter.cz true
64 mskalick@witter.cz true
65 satai@mathstodon.xyz true
66 fandasin@social.linux.pizza true
67 prrejpal@cztwitter.cz true
margo@mastodon.arch-linux.cz true
68 infoekcz@mamutovo.cz true
69 baadvo@mastodonczech.cz true
70 cernejpudinkcz@mastodonczech.cz true
71 simindr@mastodonczech.cz true
72 DivkaVModrem@cztwitter.cz true
73 kalendar@mastodon.arch-linux.cz lynxbaal@ohai.social true
74 madla@mastodonczech.cz true
75 ChorozonX@cztwitter.cz true
76 xmirek@mastodonczech.cz true
78 technotramp@mastodonczech.cz true
79 DamianVCechov@cztwitter.cz true
80 andrej@mastodon.pirati.cz true
vitex@f.cz true
81 KaterinaGloserova@mastodonczech.cz true
82 vitex@f.cz true
83 bycx@mastodonczech.cz true
84 medidekpu@cztwitter.cz true
85 janmelvil@mastodonczech.cz true
86 Jankajanicka0@cztwitter.cz true
87 Erdela@mastodonczech.cz true
Ilusie@mastodon.arch-linux.cz true
88 otecfura@witter.cz true
89 Lenislavka@mastodonczech.cz true
90 caragraph@f.cz true
96 babaq@mastodonczech.cz true
97 tatageek@witter.cz true
98 medvjed@witter.cz true
99 Petr90@mamutovo.cz true
100 jachym@mastodonczech.cz true
101 Neovlivnicz@witter.cz true
102 Petr90@mamutovo.cz dan@ajtaci.club true
103 honzajavorek@mastodonczech.cz true
104 PavelUngr@mastodonczech.cz true
105 tomulinek@mastodonczech.cz true
106 backorka@cztwitter.cz true
107 Onqa6@mastodon.arch-linux.cz krcmar@mastodon.social true
108 Razemix@mamutovo.cz true
109 amarok@mastodonczech.cz true
110 OpalkovaH@cztwitter.cz true
112 tomasmartinek@mastodon.pirati.cz true
113 lacertacz@mastodonczech.cz true
114 sibik@mastodonczech.cz true
115 srandista@mastodonczech.cz true
116 algebraicterror@witter.cz true
117 gavinnyoriginal@cztwitter.cz true
118 pavelkout@mastodonczech.cz true
119 politiq@mastodon.arch-linux.cz true
120 Lady_Catlion@cztwitter.cz true
121 koniash@cztwitter.cz true
122 aikencz@f.cz true
123 sandruska93@mas.to true
124 KarelCapek@mastodonczech.cz true
125 dotekomanie@mastodonczech.cz true
126 wuwej@mastodonczech.cz true
127 banterCZ@witter.cz true
128 stepan@f.cz true
129 Ondrejnovak@mastodonczech.cz true
130 bobcap@witter.cz true
131 Yamato@mastodonczech.cz true
132 zuzanavlasata@mastodonczech.cz true
133 mkyral@mastodonczech.cz true
134 JanPetrus@cztwitter.cz true
135 jakub_neruda@techhub.social true
136 pavlas@mastodon.social true
137 mysikralovna@mastodonczech.cz true
138 Medojedka@cztwitter.cz true
139 logout@mastodonczech.cz true
140 Andreas@mastodonczech.cz true
141 kolektiv115@witter.cz true
142 loar@witter.cz true
143 programydovoleb@cztwitter.cz true
144 jaandrle@fosstodon.org true
145 af@witter.cz true
146 minimax@mastodonczech.cz true
147 milan@mastodonczech.cz true
148 cynik_obecny@mamutovo.cz true
149 EP_prehledne@mastodon.pirati.cz true
150 milosb@cztwitter.cz true
151 Fencer@mastodonczech.cz true
152 josefpatocka@witter.cz true
153 MarekPavlis@mastodonczech.cz true
154 daliborzz@witter.cz true
155 oschon@mastodonczech.cz true
156 hynekolog@witter.cz true
157 theron29@witter.cz true
158 dnesnaukrajine@f.cz true
159 Salix@mastodonczech.cz true
160 Jann@mastodonczech.cz true
161 lubosblazek@mamutovo.cz true
162 VerUhlir@mastodonczech.cz true
163 calavera@witter.cz true
164 Zettl_josef@mamutovo.cz true
165 birdlifecz@mastodonczech.cz true
166 Wolf70@mamutovo.cz true
167 rholas@mamutovo.cz true
168 donbahno@mastodonczech.cz true
169 fotovoltaika@mastodonczech.cz true
170 pirati_sck@mastodon.pirati.cz true
171 vsa@mamutovo.cz true
172 neskaut@mastodonczech.cz true
173 eurobubba@mastodonczech.cz true
174 sedmagenerace@mastodonczech.cz true
175 pelikanekcz@mastodonczech.cz true
176 martindrtina@mastodonczech.cz true
177 white_monkey@witter.cz true
178 elix@mastodonczech.cz true
179 LazzLazz@witter.cz true
180 OnlyFester@cztwitter.cz true
181 baghira@witter.cz true
182 david_melden@cztwitter.cz true
183 bikepacking@mastodonczech.cz true
184 Ibidem@mastodonczech.cz true
185 lifehacky@mastodonczech.cz true
186 jaroslav73@cztwitter.cz true
187 ondras@cztwitter.cz true
188 JaromirSramek@mastodonczech.cz true
189 ferda@f.cz true
190 elfkam@mastodonczech.cz true
191 michal@vltava.cloud true
192 jana_kinc@cztwitter.cz true
193 radiotata@mastodonczech.cz true
194 jirismika@mastodon.social true
195 TramPhotos@mastodonczech.cz true
196 m_tremcinsky@witter.cz true
197 davede@mastodonczech.cz true
198 Miha@cztwitter.cz true
199 Magda@cztwitter.cz true
200 Nox@cztwitter.cz true
201 danielmilde@mastodonczech.cz true
+1575 -170
View File
File diff suppressed because it is too large Load Diff
+99
View File
@@ -0,0 +1,99 @@
medvidekpu@mastodon.social,true,false,
xchaos@f.cz,true,false,
davidslizek@mastodonczech.cz,true,false,
olikockova@cztwitter.cz,true,false,
nolog@witter.cz,true,false,
fuxoft@kompost.cz,true,false,
filiptitlbach@mastodonczech.cz,true,false,
boninska@cztwitter.cz,true,false,
irozhlas@rozhlas.cz,true,false,
evapavlikova@mastodon.social,true,false,
parlamentnizpravycz@mastodonczech.cz,true,false,
danielsnor@mastodon.social,true,false,
petra_bohemica@mastodon.social,true,false,
fabia_man@mamutovo.cz,true,false,
plsik@mastodon.social,true,false,
beneslenka@mastodonczech.cz,true,false,
michal@spondr.cz,true,false,
zoul@boskovice.social,true,false,
tymoty@f.cz,true,false,
jackc@kompost.cz,true,false,
ottovonwenkoff@mastodonczech.cz,true,false,
unreed@mastodonczech.cz,true,false,
tombarys@mastodon.social,true,false,
stepan@skorpil.cz,true,false,
sumavanet@mastodonczech.cz,true,false,
honzakorinek@cztwitter.cz,true,false,
rezzabuh@mastodon.social,true,false,
zbiejczuk@mastodonczech.cz,true,false,
otakar_brabec@cztwitter.cz,true,false,
zechy@mastodonczech.cz,true,false,
piratzbrna@mastodonczech.cz,true,false,
openalt@mastodon.social,true,false,
satai@mathstodon.xyz,true,false,
fandasin@social.linux.pizza,true,false,
infoekcz@mamutovo.cz,true,false,
cernejpudinkcz@mastodonczech.cz,true,false,
lynxbaal@ohai.social,true,false,
vitex@f.cz,true,false,
bycx@mastodonczech.cz,true,false,
janmelvil@mastodonczech.cz,true,false,
erdela@mastodonczech.cz,true,false,
otecfura@witter.cz,true,false,
smoon@mamutovo.cz,true,false,
lepapierblanc@mastodonczech.cz,true,false,
vitsoft@cztwitter.cz,true,false,
xcabal05@mamutovo.cz,true,false,
babaq@mastodonczech.cz,true,false,
tatageek@witter.cz,true,false,
dan@ajtaci.club,true,false,
honzajavorek@mastodonczech.cz,true,false,
tomulinek@mastodonczech.cz,true,false,
krcmar@mastodon.social,true,false,
razemix@mamutovo.cz,true,false,
amarok@mastodonczech.cz,true,false,
anlexcz@witter.cz,true,false,
lacertacz@mastodonczech.cz,true,false,
srandista@mastodonczech.cz,true,false,
politiq@mastodon.arch-linux.cz,true,false,
aikencz@f.cz,true,false,
sandruska93@mas.to,true,false,
karelcapek@mastodonczech.cz,true,false,
wuwej@mastodonczech.cz,true,false,
bantercz@witter.cz,true,false,
yamato@mastodonczech.cz,true,false,
mkyral@mastodonczech.cz,true,false,
jakub_neruda@techhub.social,true,false,
pavlas@mastodon.social,true,false,
logout@mastodonczech.cz,true,false,
jaandrle@fosstodon.org,true,false,
minimax@mastodonczech.cz,true,false,
cynik_obecny@mamutovo.cz,true,false,
milosb@cztwitter.cz,true,false,
marekpavlis@mastodonczech.cz,true,false,
daliborzz@witter.cz,true,false,
salix@mastodonczech.cz,true,false,
jann@mastodonczech.cz,true,false,
veruhlir@mastodonczech.cz,true,false,
calavera@witter.cz,true,false,
zettl_josef@mamutovo.cz,true,false,
rholas@mamutovo.cz,true,false,
donbahno@mastodonczech.cz,true,false,
vsa@mamutovo.cz,true,false,
eurobubba@mastodonczech.cz,true,false,
sedmagenerace@mastodonczech.cz,true,false,
white_monkey@witter.cz,true,false,
ondras@cztwitter.cz,true,false,
ferda@f.cz,true,false,
elfkam@mastodonczech.cz,true,false,
michal@vltava.cloud,true,false,
radiotata@mastodonczech.cz,true,false,
jirismika@mastodon.social,true,false,
misasuch@witter.cz,true,false,
bzz@mastodonczech.cz,true,false,
tomherlik@mastodon.social,true,false,
architektradim@mastodonczech.cz,true,false,
nacelnik01@mamutovo.cz,true,false,
sledge@mastodonczech.cz,true,false,
tensob_@mastodonczech.cz,true,false
archos@gts.arch-linux.cz,true,false,
1 medvidekpu@mastodon.social true false
2 xchaos@f.cz true false
3 davidslizek@mastodonczech.cz true false
4 olikockova@cztwitter.cz true false
5 nolog@witter.cz true false
6 fuxoft@kompost.cz true false
7 filiptitlbach@mastodonczech.cz true false
8 boninska@cztwitter.cz true false
9 irozhlas@rozhlas.cz true false
10 evapavlikova@mastodon.social true false
11 parlamentnizpravycz@mastodonczech.cz true false
12 danielsnor@mastodon.social true false
13 petra_bohemica@mastodon.social true false
14 fabia_man@mamutovo.cz true false
15 plsik@mastodon.social true false
16 beneslenka@mastodonczech.cz true false
17 michal@spondr.cz true false
18 zoul@boskovice.social true false
19 tymoty@f.cz true false
20 jackc@kompost.cz true false
21 ottovonwenkoff@mastodonczech.cz true false
22 unreed@mastodonczech.cz true false
23 tombarys@mastodon.social true false
24 stepan@skorpil.cz true false
25 sumavanet@mastodonczech.cz true false
26 honzakorinek@cztwitter.cz true false
27 rezzabuh@mastodon.social true false
28 zbiejczuk@mastodonczech.cz true false
29 otakar_brabec@cztwitter.cz true false
30 zechy@mastodonczech.cz true false
31 piratzbrna@mastodonczech.cz true false
32 openalt@mastodon.social true false
33 satai@mathstodon.xyz true false
34 fandasin@social.linux.pizza true false
35 infoekcz@mamutovo.cz true false
36 cernejpudinkcz@mastodonczech.cz true false
37 lynxbaal@ohai.social true false
38 vitex@f.cz true false
39 bycx@mastodonczech.cz true false
40 janmelvil@mastodonczech.cz true false
41 erdela@mastodonczech.cz true false
42 otecfura@witter.cz true false
43 smoon@mamutovo.cz true false
44 lepapierblanc@mastodonczech.cz true false
45 vitsoft@cztwitter.cz true false
46 xcabal05@mamutovo.cz true false
47 babaq@mastodonczech.cz true false
48 tatageek@witter.cz true false
49 dan@ajtaci.club true false
50 honzajavorek@mastodonczech.cz true false
51 tomulinek@mastodonczech.cz true false
52 krcmar@mastodon.social true false
53 razemix@mamutovo.cz true false
54 amarok@mastodonczech.cz true false
55 anlexcz@witter.cz true false
56 lacertacz@mastodonczech.cz true false
57 srandista@mastodonczech.cz true false
58 politiq@mastodon.arch-linux.cz true false
59 aikencz@f.cz true false
60 sandruska93@mas.to true false
61 karelcapek@mastodonczech.cz true false
62 wuwej@mastodonczech.cz true false
63 bantercz@witter.cz true false
64 yamato@mastodonczech.cz true false
65 mkyral@mastodonczech.cz true false
66 jakub_neruda@techhub.social true false
67 pavlas@mastodon.social true false
68 logout@mastodonczech.cz true false
69 jaandrle@fosstodon.org true false
70 minimax@mastodonczech.cz true false
71 cynik_obecny@mamutovo.cz true false
72 milosb@cztwitter.cz true false
73 marekpavlis@mastodonczech.cz true false
74 daliborzz@witter.cz true false
75 salix@mastodonczech.cz true false
76 jann@mastodonczech.cz true false
77 veruhlir@mastodonczech.cz true false
78 calavera@witter.cz true false
79 zettl_josef@mamutovo.cz true false
80 rholas@mamutovo.cz true false
81 donbahno@mastodonczech.cz true false
82 vsa@mamutovo.cz true false
83 eurobubba@mastodonczech.cz true false
84 sedmagenerace@mastodonczech.cz true false
85 white_monkey@witter.cz true false
86 ondras@cztwitter.cz true false
87 ferda@f.cz true false
88 elfkam@mastodonczech.cz true false
89 michal@vltava.cloud true false
90 radiotata@mastodonczech.cz true false
91 jirismika@mastodon.social true false
92 misasuch@witter.cz true false
93 bzz@mastodonczech.cz true false
94 tomherlik@mastodon.social true false
95 architektradim@mastodonczech.cz true false
96 nacelnik01@mamutovo.cz true false
97 sledge@mastodonczech.cz true false
98 tensob_@mastodonczech.cz true false
99 archos@gts.arch-linux.cz true false
+88 -22
View File
@@ -23,21 +23,38 @@ from datetime import datetime, timezone, timedelta
from pathlib import Path
import urllib.request, urllib.error, urllib.parse
def _load_token():
token = os.environ.get("MASTODON_TOKEN")
if token:
return token.strip()
def _load_tokens():
tokens = {}
env_path = Path(__file__).parent / ".env"
if env_path.exists():
for line in env_path.read_text().splitlines():
env_lines = env_path.read_text().splitlines() if env_path.exists() else []
for key in ("MASTODON_TOKEN", "GTS_TOKEN"):
val = os.environ.get(key)
if not val:
for line in env_lines:
line = line.strip()
if line.startswith(f"{key}="):
val = line.split("=", 1)[1].strip()
break
if val:
tokens[key] = val.strip()
# fallback: raw token value (legacy .env bez klíče)
if "MASTODON_TOKEN" not in tokens:
for line in env_lines:
line = line.strip()
if line.startswith("MASTODON_TOKEN="):
return line.split("=", 1)[1].strip()
if line and not line.startswith("#") and "=" not in line:
return line # raw token value
return None
tokens["MASTODON_TOKEN"] = line
break
return tokens
MASTODON_TOKEN = _load_token()
_TOKENS = _load_tokens()
MASTODON_TOKEN = _TOKENS.get("MASTODON_TOKEN")
GTS_TOKEN = _TOKENS.get("GTS_TOKEN")
def _token_for(instance: str) -> str | None:
"""Vrátí GTS_TOKEN pro GoToSocial instance (obsahují 'gts.' v doméně), jinak MASTODON_TOKEN."""
if GTS_TOKEN and "gts." in instance:
return GTS_TOKEN
return MASTODON_TOKEN
logging.basicConfig(level=logging.INFO, format="%(asctime)s %(levelname)s %(message)s", datefmt="%H:%M:%S")
log = logging.getLogger(__name__)
@@ -48,27 +65,32 @@ QUERY_INSTANCES = [
"mastodonczech.cz", # 713 CZ uživatelů
"cztwitter.cz", # 229 CZ uživatelů
"witter.cz", # 212 CZ uživatelů
"mastodon.arch-linux.cz", # 115 CZ uživatelů
"mastodon.pirati.cz", # 52 CZ uživatelů
"f.cz", # 40 CZ uživatelů
"lgbtcz.social", # 7 CZ uživatelů
"boskovice.social", # 5 CZ uživatelů
"mamutovo.cz",
"gts.arch-linux.cz",
"kompost.cz",
"spondr.cz",
"skorpil.cz",
"ajtaci.club",
]
MIN_STATUSES = 10
MIN_FOLLOWERS = 10
MAX_DAYS_INACTIVE = 365
TOP_N = 100
MAX_DAYS_INACTIVE = 90
TOP_N = 200
RATE_LIMIT_DELAY = 1.2
PAGE_LIMIT = 80
MAX_PAGES = 10
# ── HTTP ──────────────────────────────────────
def api_get(url, timeout=15):
def api_get(url, timeout=15, token=None):
headers = {"User-Agent": "MamutovoStarterBot/1.0 (+https://mamutovo.cz)"}
if MASTODON_TOKEN:
headers["Authorization"] = f"Bearer {MASTODON_TOKEN}"
tok = token if token is not None else MASTODON_TOKEN
if tok:
headers["Authorization"] = f"Bearer {tok}"
try:
req = urllib.request.Request(url, headers=headers)
with urllib.request.urlopen(req, timeout=timeout) as r:
@@ -86,21 +108,22 @@ def api_get(url, timeout=15):
def _fetch_small_instance(instance, seen_handles, all_accounts):
"""Malé CZ/SK instance: bereme všechny uživatele z directory."""
log.info(f"directory {instance} ...")
token = _token_for(instance)
page = 0
while page < MAX_PAGES:
offset = page * PAGE_LIMIT
url = (f"https://{instance}/api/v1/directory"
f"?limit={PAGE_LIMIT}&local=true&offset={offset}")
batch = api_get(url)
batch = api_get(url, token=token)
if not batch or not isinstance(batch, list):
break
added = 0
for acc in batch:
acct = acc.get("acct", "")
handle = acct if "@" in acct else f"{acct}@{instance}"
if handle in seen_handles:
if handle.lower() in seen_handles:
continue
seen_handles.add(handle)
seen_handles.add(handle.lower())
acc["_handle"] = handle
acc["_source_instance"] = instance
all_accounts.append(acc)
@@ -121,6 +144,47 @@ def fetch_all_accounts():
log.info(f"Sběr hotov: {len(all_accounts)} unikátních účtů")
return all_accounts
def load_manual_accounts(seen_handles=None):
"""Načte manual_accounts.csv a dohledá každý účet přes /api/v1/accounts/lookup."""
csv_path = Path(__file__).parent / "manual_accounts.csv"
if not csv_path.exists():
log.info("manual_accounts.csv nenalezen, přeskakuji")
return []
if seen_handles is None:
seen_handles = set()
accounts = []
with open(csv_path, newline="", encoding="utf-8") as f:
for row in csv.reader(f):
if not row:
continue
entry = row[0].strip()
if not entry or "@" not in entry:
continue
handle_part, instance = entry.rsplit("@", 1)
handle = f"{handle_part}@{instance}"
if handle.lower() in seen_handles:
log.debug(f" {handle} již v seznamu, přeskakuji")
continue
url = f"https://{instance}/api/v1/accounts/lookup?acct={urllib.parse.quote(handle_part)}"
token = _token_for(instance)
if handle.lower() == "archos@gts.arch-linux.cz":
tok_preview = (token[:8] + "...") if token else None
log.info(f"[DEBUG archos] token={tok_preview} url={url}")
acc = api_get(url, token=token)
if handle.lower() == "archos@gts.arch-linux.cz":
log.info(f"[DEBUG archos] api_get vrátil: {None if not acc else 'dict s ' + str(list(acc.keys())[:5])}")
if not acc or not isinstance(acc, dict):
log.warning(f" {handle}: lookup selhal")
continue
seen_handles.add(handle.lower())
acc["_handle"] = handle
acc["_source_instance"] = instance
accounts.append(acc)
log.debug(f" {handle}: OK ({acc.get('followers_count', 0)} followers)")
time.sleep(RATE_LIMIT_DELAY)
log.info(f"Manuální účty: {len(accounts)} načteno z {csv_path.name}")
return accounts
# ── FILTRY ────────────────────────────────────
def passes_quality(acc):
if acc.get("suspended") or acc.get("limited"):
@@ -202,8 +266,8 @@ def build_output(raw):
seen = set()
unique = []
for r in sorted(results, key=lambda x: x["followers"], reverse=True):
if r["handle"] not in seen:
seen.add(r["handle"])
if r["handle"].lower() not in seen:
seen.add(r["handle"].lower())
unique.append(r)
return unique[:TOP_N]
@@ -237,6 +301,8 @@ def main():
output_dir.mkdir(parents=True, exist_ok=True)
log.info(f"Startuji {len(QUERY_INSTANCES)} instancí")
raw = fetch_all_accounts()
seen_handles = {acc["_handle"].lower() for acc in raw}
raw += load_manual_accounts(seen_handles)
accounts = build_output(raw)
if not accounts:
log.error("Žádné účty! Zkontroluj připojení.")