Cria opção de usar dados já descarregados na máquina local. #28
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposta para agilizar a manipulação dos dados e melhorar eficiência do uso das redes.
Na versão atual, o script sempre faz download dos arquivos do site do TSE. No caso da pessoa criar dois dataframes com o mesmo arquivo de origem, o arquivo é descarregado duas vezes. Por exemplo:
A proposta dessas alterações é permitir às pessoas configurar uma pasta local para armazenar os arquivos e passar a ler os dados dessa pasta local. Se trabalhar com dados locais pode levar o usuário a utilizar dados desatualizados, o risco é compensado ao promover agilidade de quem não tem uma excelente conexão de internet. Importante destacar que sem definir essa configuração o script permanecerá com o comportamento atual de sempre baixar os arquivos.
Para implementar essa configuração foi levado em consideração que o TSE não realiza alterações nos arquivos com alta frequência, não será em horas ou mesmo semanas, que haverá defasagem de dados. Também foi considerado o princípio de desenvolvimento em Python de que somos todos adultos responsáveis.
Por meio da função options do pacote base do R, o usuário pode configurar a pasta de downloads dos arquivos na variável electionsBR-data-path. Por exemplo:
Ao executar as funções o script primeiro buscará os arquivos na pasta configurada no passo anterior e, se não encontrar, então, fará o descarregamento do arquivo.
Com essa alteração, na segunda execução da função candidate_fed o script utiliza o arquivo já descarregado pela execução anterior.
O script foi refatorado para centralizar o tratamento dos arquivos em três funções. Nessa refatoração foi considerado o princípio Don't repeat Yourself de não redundância de código. Isso facilitou a implementação da função de verificação da opção de pasta local e dos arquivos descarregados. E, também, preparou a estrutura do código para agilizar futuras manutenções na função de tratamento arquivos, como por exemplo, verificar a versão dos arquivos remotos e sugerir ao usuário o novo download.