Uma vez implementado o Extrator, preciso agora coletar os dados.
Fazendo uma rápida pesquisa, descobri que o Glassdoor tem uma API e que TEORICAMENTE basta entrar em contado com eles para que lhe seja fornecido uma chave e vc se torne um “API partner”. Isso ai é bem teoricamente mesmo, uma vez que entrei em contato e não obtive nenhuma resposta, nem mesmo um “vlw. mas n”.
Resolvi então usar o módulo requests mas descobri que as requisições ao site esbarravam em informações da tela de login. Decidi então que o jeito que me consumiria menos (afinal, a ideia é levar mais ou menos 1 fim de semana, juntamente com todas as outras coisas que quero fazer) seria usar o selenium. O Selenium é um módulo que permite automação em navegadores web com o intuito de ser uma ferramenta de testes. Com ele podemos, entre outras coisas, navegar e interagir com elementos de um site, incluindo digitar em áreas de texto e clicar em botões , de forma autônoma.
Como o objetivo era bem simples (logar no glassdoor, buscar algumas empresas, acessar a área de avaliação de cada uma delas e copiar todas as avaliações) o selenium se mostrou mais que o suficiente. Os dados foram salvos em arquivos json. Como o jupyter notebook fazia o selenium fechar inesperadamente independentemente de qual navegador (usei o chrome e o firefox), implementei diretamente em um script python. Para executá-lo, basta chamar o script com a opção -c seguido (entre aspas) das empresas que deseja buscar sepadas apenas por virgula. Exemplo: python3 scrapper.py -c ‘Empresa1,Empresa2,Empresa DoisNomes’
Novamente, algumas estruturas estão faltantes pois impedi o rastreamento pelo git pra evitar dores de cabeça.