-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathget_top50_countries.py
62 lines (51 loc) · 1.48 KB
/
get_top50_countries.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
#!/bin/python3
from chessdotcom import get_country_details, get_country_players, get_player_game_archives, get_player_profile, get_player_stats
import requests
import csv
def loading_bar(atual, maximo):
qntd = atual * 100 // maximo
print('[',end='')
for _ in range(qntd):
print('|',end='')
for _ in range(100-qntd):
print(' ',end='')
print(']')
# lê as siglas dos países
file_country = open('country_codes.txt', 'r')
codes = file_country.readlines()
# retira o \n no final
codes = [x.strip('\n') for x in codes]
# lista com os países aceitos
acceptable_coutries = []
iterador = 0
for code in codes:
# pra eu não ficar perdido, implementei essa barra de carregamento
# pois houve alguns problemas de conexão e eu não sabia se tava pegando os dados
# ou não estava fazendo nada xD
loading_bar(iterador,len(codes))
iterador += 1
# lógica pra pegar os dados que eu quero
flag = 0
try:
data = get_country_details(code)
except:
flag = -1
# caso tudo tenha dado certo, adiciona o páis na lista
if flag != -1:
acceptable_coutries.append(code)
# anúncios
print("TODOS OS PAÍSES ACEITOS FORAM ACHADOS")
d = {}
iterador = 0
for code in acceptable_coutries:
loading_bar(iterador,len(acceptable_coutries))
iterador += 1
try:
tamanho = len(get_country_players(code).json['players'])
d[tamanho] = code
except:
pass
l = list(d.items())
l.sort()
x = l[-50:]
print(x)