MOC Posted August 23, 2021 Share Posted August 23, 2021 Onde consigo baixar um arquivo com todos os resultados da loterias Caixa? pode ser também 1 por um através de link de consulta ou json, porém preciso que seja a CEF a fonte. Lembro um tempo atrás era possível baixar uma arquivo zipado, agora parece não estar disponível. Esse já não funciona http://www1.caixa.gov.br/loterias/_arquivos/loterias/D_mgsasc.zip Quote Link to comment Share on other sites More sharing options...
Rany Posted August 23, 2021 Share Posted August 23, 2021 Baixar todos os resultados em JSON é um pouco demorado, melhor alternativa na minha visão é a que estou enviando abaixo. Faça o download dos resultados utilizando o link abaixo, salvando como um arquivo html http://loterias.caixa.gov.br/wps/portal/loterias/landing/megasena/!ut/p/a1/04_Sj9CPykssy0xPLMnMz0vMAfGjzOLNDH0MPAzcDbwMPI0sDBxNXAOMwrzCjA0sjIEKIoEKnN0dPUzMfQwMDEwsjAw8XZw8XMwtfQ0MPM2I02-AAzgaENIfrh-FqsQ9wNnUwNHfxcnSwBgIDUyhCvA5EawAjxsKckMjDDI9FQE-F4ca/dl5/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_HGK818G0K8DBC0QPVN93KQ10G1/res/id=historicoHTML/c=cacheLevelPage/=/ Depois só mandar importar os dados igual vc fazia antes, ou seja, quando a caixa disponibilizava o arquivo em formato zip. Basicamente a diferença é que esse novo arquivo html possui um pouco mais de 3 mb e antes era em torno de 200 kb (pois já estava compactado). Segue código em object pascal (uso turbo delphi) de como baixar o arquivo html: Observação: A lógica do código abaixo é a mesma para qualquer linguagem de programação, estou enviando em object pascal pois é o que tenho pronto aqui. //Em uses declare UrlMon //função generica para realizar download function DownloadFile(Source, Dest: string): Boolean; begin try Result := UrlDownloadToFile(nil, PChar(source), PChar(Dest), 0, nil) = 0; except Result := False; end; end; procedure TForm1.Button1Click(Sender: TObject); var url: string; begin //a url por ser muito longa, se faz necessário cortar em partes e depois segue unindo novamente url:= 'http://loterias.caixa.gov.br/wps/portal/loterias/landing/megasena/!ut/p/a1/04_'; url:= url + 'Sj9CPykssy0xPLMnMz0vMAfGjzOLNDH0MPAzcDbwMPI0sDBxNXAOMwrzCjA0sjIEKIoEKnN0dPUzMfQwMDEwsjAw8XZw8XMwtfQ0MPM2I02-'; url:= url + 'AAzgaENIfrh-FqsQ9wNnUwNHfxcnSwBgIDUyhCvA5EawAjxsKckMjDDI9FQE-F4ca/dl5/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_'; url:= url + 'HGK818G0K8DBC0QPVN93KQ10G1/res/id=historicoHTML/c=cacheLevelPage/=/'; //o arquivo megasena.html será salvo no diretório do aplicativo if DownloadFile (url, ExtractFilePath(ParamStr(0))+ '\megasena.html') then ShowMessage('Download Concluído!') else ShowMessage('Falha ao fazer o download!!') end; 2 1 Quote Link to comment Share on other sites More sharing options...
MOC Posted August 23, 2021 Author Share Posted August 23, 2021 9 horas atrás, Rany disse: Baixar todos os resultados em JSON é um pouco demorado, melhor alternativa na minha visão é a que estou enviando abaixo. Faça o download dos resultados utilizando o link abaixo, salvando como um arquivo html http://loterias.caixa.gov.br/wps/portal/loterias/landing/megasena/!ut/p/a1/04_Sj9CPykssy0xPLMnMz0vMAfGjzOLNDH0MPAzcDbwMPI0sDBxNXAOMwrzCjA0sjIEKIoEKnN0dPUzMfQwMDEwsjAw8XZw8XMwtfQ0MPM2I02-AAzgaENIfrh-FqsQ9wNnUwNHfxcnSwBgIDUyhCvA5EawAjxsKckMjDDI9FQE-F4ca/dl5/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_HGK818G0K8DBC0QPVN93KQ10G1/res/id=historicoHTML/c=cacheLevelPage/=/ Depois só mandar importar os dados igual vc fazia antes, ou seja, quando a caixa disponibilizava o arquivo em formato zip. Basicamente a diferença é que esse novo arquivo html possui um pouco mais de 3 mb e antes era em torno de 200 kb (pois já estava compactado). Segue código em object pascal (uso turbo delphi) de como baixar o arquivo html: Observação: A lógica do código abaixo é a mesma para qualquer linguagem de programação, estou enviando em object pascal pois é o que tenho pronto aqui. //Em uses declare UrlMon //função generica para realizar download function DownloadFile(Source, Dest: string): Boolean; begin try Result := UrlDownloadToFile(nil, PChar(source), PChar(Dest), 0, nil) = 0; except Result := False; end; end; procedure TForm1.Button1Click(Sender: TObject); var url: string; begin //a url por ser muito longa, se faz necessário cortar em partes e depois segue unindo novamente url:= 'http://loterias.caixa.gov.br/wps/portal/loterias/landing/megasena/!ut/p/a1/04_'; url:= url + 'Sj9CPykssy0xPLMnMz0vMAfGjzOLNDH0MPAzcDbwMPI0sDBxNXAOMwrzCjA0sjIEKIoEKnN0dPUzMfQwMDEwsjAw8XZw8XMwtfQ0MPM2I02-'; url:= url + 'AAzgaENIfrh-FqsQ9wNnUwNHfxcnSwBgIDUyhCvA5EawAjxsKckMjDDI9FQE-F4ca/dl5/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_'; url:= url + 'HGK818G0K8DBC0QPVN93KQ10G1/res/id=historicoHTML/c=cacheLevelPage/=/'; //o arquivo megasena.html será salvo no diretório do aplicativo if DownloadFile (url, ExtractFilePath(ParamStr(0))+ '\megasena.html') then ShowMessage('Download Concluído!') else ShowMessage('Falha ao fazer o download!!') end; E para as outras modalidades? Vlw Quote Link to comment Share on other sites More sharing options...
Rany Posted August 23, 2021 Share Posted August 23, 2021 Em cada página oficial das loterias caixa tem a opção "Download de Resultados", só pegar o link e substituir conforme o exemplo postado. Quote Link to comment Share on other sites More sharing options...
Wata Posted August 25, 2021 Share Posted August 25, 2021 ... Quote Link to comment Share on other sites More sharing options...
rockcavera Posted August 25, 2021 Share Posted August 25, 2021 Você pode pedir no cabeçalho do requerimento que venha compactado em gzip, assim a transferência é mais rápida, desde que sua linguagem tenha suporte para descompactar gzip, é claro. Outro detalhe, você tem q definir um cookie "security=true" para a solicitação não vir com resposta "302 Found". Quote Link to comment Share on other sites More sharing options...
rockcavera Posted August 25, 2021 Share Posted August 25, 2021 7 horas atrás, Wata disse: ... Aqui já não funcionam mais... 1 Quote Link to comment Share on other sites More sharing options...
Wata Posted August 26, 2021 Share Posted August 26, 2021 1 hora atrás, rockcavera disse: Aqui já não funcionam mais... Nem tinha visto isso...... Agora eu só baixo pelo COLOGA e só a Lotofácil que é a única que eu ainda estudo... ... 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.