Tesouro Direto Scrapper


Nesse post irei contribuir com automação de aplicações financeiras, com uso do python e do selenium, realizando a coleta dos dados de extrato e protocolos do Tesouro Direto



Todo o código está no repositório do Github:

https://github.com/bulfaitelo/Tesouro-Direto-Scraper

 

O que ele faz?

Existem 2 scripts:
tesouro_direto_extrato.py:  buscando o extrato do dia em questão
tesouro_direto_protocolo.py: buscando os protocolos do mês passado até o dia atual.


Requerimentos:

É necessário ter o Python instalado e configurado, que o Python tenha o selenium.

Limitações

Por utilizar o drive seleium ele basicamente emula um navegador e "copia e cola" os dados, se for usar em uma aplicação que tenha muitos usuários ele irá consumir muita memória ou irá demorar muitas horas para executar, então use com sabedoria :). 

Como usar

Basta executar o script juntamente do seu cpf e senha, exemplo:

python tesouro_direto_extrato.py 12354796369 pass123

python tesouro_direto_protocolo.py 12354796369 pass123

Retorno

Ambos os scripts retornam um json com todos os dados pra pronto para ser inserido em um banco de dados.
[ {"inicio": "2018-06-15 10:08:20.379805"},
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro IPCA+ 2019", "vencimento": "2019-05-15 00:00:00", "valor_investido": "50.72", "valor_bruto_atual": "60.05", "valor_liquido_atual": "58.15", "quant_total": "0.02", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro IPCA+ com Juros Semestrais 2026", "vencimento": "2026-08-15 00:00:00", "valor_investido": "1003.08", "valor_bruto_atual": "974.02", "valor_liquido_atual": "971.82", "quant_total": "0.31", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro Prefixado 2020", "vencimento": "2020-01-01 00:00:00", "valor_investido": "234.47", "valor_bruto_atual": "261.18", "valor_liquido_atual": "255.74", "quant_total": "0.30", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro Prefixado 2025", "vencimento": "2025-01-01 00:00:00", "valor_investido": "97.85", "valor_bruto_atual": "94.77", "valor_liquido_atual": "94.77", "quant_total": "0.20", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro Prefixado com Juros Semestrais 2027", "vencimento": "2027-01-01 00:00:00", "valor_investido": "234.89", "valor_bruto_atual": "235.00", "valor_liquido_atual": "234.06", "quant_total": "0.25", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro Selic 2021", "vencimento": "2021-03-01 00:00:00", "valor_investido": "1083.73", "valor_bruto_atual": "1241.11", "valor_liquido_atual": "1208.24", "quant_total": "0.13", "quant_bloqueado": "0.00" },
{ "nome_representante": "EASYNVEST", "titulo": "Tesouro Selic 2023", "vencimento": "2023-03-01 00:00:00", "valor_investido": "2241.49", "valor_bruto_atual": "2382.64", "valor_liquido_atual": "2350.69", "quant_total": "0.25", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro IPCA+ 2024", "vencimento": "2024-08-15 00:00:00", "valor_investido": "318.88", "valor_bruto_atual": "301.54", "valor_liquido_atual": "301.27", "quant_total": "0.14", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro IPCA+ com Juros Semestrais 2026", "vencimento": "2026-08-15 00:00:00", "valor_investido": "33.24", "valor_bruto_atual": "31.42", "valor_liquido_atual": "31.39", "quant_total": "0.01", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro IPCA+ com Juros Semestrais 2035", "vencimento": "2035-05-15 00:00:00", "valor_investido": "103.89", "valor_bruto_atual": "92.93", "valor_liquido_atual": "92.91", "quant_total": "0.03", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro IPCA+ com Juros Semestrais 2050", "vencimento": "2050-08-15 00:00:00", "valor_investido": "35.41", "valor_bruto_atual": "31.39", "valor_liquido_atual": "31.37", "quant_total": "0.01", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro Prefixado 2021", "vencimento": "2021-01-01 00:00:00", "valor_investido": "380.34", "valor_bruto_atual": "374.46", "valor_liquido_atual": "374.11", "quant_total": "0.48", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro Prefixado 2025", "vencimento": "2025-01-01 00:00:00", "valor_investido": "285.64", "valor_bruto_atual": "255.89", "valor_liquido_atual": "255.66", "quant_total": "0.54", "quant_bloqueado": "0.00" },
{ "nome_representante": "RICO INVESTIMENTOS", "titulo": "Tesouro Selic 2023", "vencimento": "2023-03-01 00:00:00", "valor_investido": "1874.75", "valor_bruto_atual": "1906.12", "valor_liquido_atual": "1897.39", "quant_total": "0.20", "quant_bloqueado": "0.00" },
{"fim": "2018-06-15 10:08:55.297721"} ]

Conclusão

Esse script faz parte de um projeto que tenho de controle financeiro, então como não existia nada parecido eu optei por compartilhar com a comunidade, espero que seja útil!



Se vocês gostaram desse Post não deixe de compartilhar com seus amigos!!!
E para não perder nenhuma novidade nos sigam nas redes sociais:
Twitter: @Bulfaitelo
Facebook: Bulfaitelo Project
Blogger: Bulfaitelo Project
Share on Google Plus

About Thiago Rodrigues

Formado em Sistema de Informação pela Faculdade Paraíso
O que falar de mim? Não á muito, mas garanto que meu objetivo aqui é somente ajudar!
Atualmente desenvolvendo o projeto do QiEstudo.

Comentários
0 Comentários

0 comentários:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.