3.4 Melhores práticas para web scraping
É importante ressaltar que só estamos trabalhando com dados públicos. Caso tenha interesse em raspar páginas que precisam de autenticação ou uma página .com
, recomendamos que estude os termos de uso do site.
Nessa parte, trabalharemos principalmente com a Consulta de Jurisprudência e a Consulta de de Processos de Segundo Grau do TJSP, mas também teremos um pouco de pesquisas nos diários oficiais.
3.4.1 Informações iniciais
Antes de iniciar um scraper, verifique se existe alguma forma mais fácil de conseguir os dados que necessita. Construir um web scraper do zero é muitas vezes uma tarefa dolorosa e, caso o site seja atualizado, pode ser que boa parte do trabalho seja inútil. Se os dados precisarem ser extraídos apenas uma vez, verifique com os responsáveis pela manutenção do site se eles podem fazer a extração que precisa. Se os dados precisarem ser atualizados, verifique se a entidade não possui uma API para acesso aos dados.
Ao escrever um web scraper, as primeiras coisas que devemos pensar são, nessa porgem
- Qual o caminho percorrido para acessar uma página específica.
- Como o site a ser acessado foi contruído, se tem limites de requisições, utilização de cookies, states, etc.
- Como e com que frequência o site é atualizado, tanto em relação à sua interface como em relação aos dados que queremos extrair.
Em sites dos tribunais, uma boa prática é dividir as atividades em três grupos principais: i) listar; ii) coletar e iii) processar. Quando já sabemos de antemão quais são os processos que vamos acessar, a etapa de listagem é desnecessária.
Deixamos os algoritmos de coleta e processamento dos dados em funções distintas para aumentar o controle sobre o que as ferramentas estão fazendo. Isso facilita o debug e a atualização. Por outro lado, em alguns casos isso pode tornar o código ineficiente e os dados brutos obtidos podem ficar pesados.