-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmegasena-scraping-new_website.py
More file actions
71 lines (56 loc) · 2.58 KB
/
Copy pathmegasena-scraping-new_website.py
File metadata and controls
71 lines (56 loc) · 2.58 KB
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
#!/usr/bin/env python3
from requests import get, exceptions
from bs4 import BeautifulSoup as sp
from operator import itemgetter
"""
Executa o parsing de todos os resultados
da Mega Sena.
PEP8 compliant
“Readability counts."
“Beautiful is better than ugly.”
— The Zen of Python
"""
""" URL com todos os resultados da megasena """
url = 'https://asloterias.com.br/lista-de-resultados-da-mega-sena'
mega_dezenas = {'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0, '7': 0, '8': 0,
'9': 0, '10': 0, '11': 0, '12': 0, '13': 0, '14': 0, '15': 0,
'16': 0, '17': 0, '18': 0, '19': 0, '20': 0, '21': 0, '22': 0,
'23': 0, '24': 0, '25': 0, '26': 0, '27': 0, '28': 0, '29': 0,
'30': 0, '31': 0, '32': 0, '33': 0, '34': 0, '35': 0, '36': 0,
'37': 0, '38': 0, '39': 0, '40': 0, '41': 0, '42': 0, '43': 0,
'44': 0, '45': 0, '46': 0, '47': 0, '48': 0, '49': 0, '50': 0,
'51': 0, '52': 0, '53': 0, '54': 0, '55': 0, '56': 0, '57': 0,
'58': 0, '59': 0, '60': 0}
try:
print('Conectando-se ao site "asloterias.com.br" ...')
with get(url, stream=True) as carregaurl:
print('Conexão feita com sucesso!\n\n')
saida_colunas = []
for linhas_tr in sp(carregaurl.content, "lxml")\
.findAll("div", class_="limpar_flutuacao"):
saida_colunas.append(linhas_tr.previous_sibling)
except exceptions.HTTPError as erro:
exit(f'--- Erro {erro} na conexao HTTP com o site ---')
with open('todos_os_resultados.csv', 'w') as arquivo_com_resultados:
arquivo_com_resultados.truncate(0)
for resultado in list(saida_colunas):
dez1 = int(resultado[17:19])
dez2 = int(resultado[20:22])
dez3 = int(resultado[23:25])
dez4 = int(resultado[26:28])
dez5 = int(resultado[29:31])
dez6 = int(resultado[32:34])
dezenas = f'{dez1},{dez2},{dez3},{dez4},{dez5},{dez6}'
print(dezenas, file=arquivo_com_resultados)
for dezena in dezenas.split(','):
if dezena in mega_dezenas:
mega_dezenas[dezena] += 1
print('--- As 10 dezenas mais (+) sorteadas na MegaSena até hoje ---\n')
for dezena, vezes in sorted(mega_dezenas.items(), key=itemgetter(1),\
reverse=True)[:10]:
print(f'{vezes:10} vezes > dezena: {dezena:10}'
f'\r')
print('--- As 10 dezenas menos (-) sorteadas na MegaSena até hoje ---\n')
for dezena, vezes in sorted(mega_dezenas.items(), key=itemgetter(1))[:10]:
print(f'{vezes:10} vezes > dezena: {dezena:10}'
f'\r')