Extrator de Vagas do Indeed - transformar uma busca de emprego em linhas estruturadas
O Indeed é o maior site de vagas do mundo, e para a maioria dos cargos na maioria dos mercados é onde uma oportunidade aparece primeiro. A busca dele é feita para navegar: você digita um cargo e um lugar, aplica um filtro ou dois e rola. Isso funciona quando você procura um emprego. Funciona mal quando a pergunta é de mercado - qual é o valor corrente para este cargo nesta cidade, quais empregadores estão contratando agora, como isso mudou desde o mês passado. O Extrator de Vagas do Indeed responde a isso transformando uma busca numa tabela: uma linha por anúncio, com o cargo, o empregador, a localização, a remuneração anunciada, o tipo de contrato, o tempo de publicação, um trecho da descrição, o link do anúncio e a chave de vaga do próprio Indeed.
O desenho deste serviço coloca a filtragem onde ela pertence - no Indeed. Uma URL de busca do Indeed codifica os próprios parâmetros: as palavras-chave como q, a localização como l (um CEP ou uma cidade e um estado), um raio em torno dessa localização, um filtro de tipo de contrato cobrindo tempo integral, meio período, contrato, estágio e temporário, um filtro de publicado nos últimos N dias, e uma escolha entre ordem por relevância e por data. Monte a busca que quiser no Indeed, copie a URL, e a execução herda tudo. Não é só conveniente, é o jeito mais barato de trabalhar: estreitar uma busca não custa nada, enquanto exportar uma ampla custa linhas.
Duas propriedades dos dados do Indeed valem ser previstas antes de construir qualquer coisa sobre a exportação. A primeira é a chave de vaga. Toda publicação no Indeed carrega um identificador jk - o valor que você vê num link viewjob - e ele chega como job_key. Essa é a coluna pela qual deduplicar. Casar por cargo e empresa parece equivalente, mas não é, porque a mesma vaga é muitas vezes anunciada mais de uma vez, às vezes por uma agência de recrutamento e pelo empregador simultaneamente, e uma correspondência textual vai fundir duas vagas reais ou dividir uma. O identificador não. A segunda é o tempo de publicação: o Indeed o escreve de forma relativa no card de resultado em vez de como data, então ele descreve o anúncio no momento da execução e não pode ser comparado entre execuções feitas em momentos diferentes. Registre a data da sua execução e derive datas reais dela.
Mais duas ressalvas mantêm a análise honesta. O salário no Indeed às vezes é um valor que o empregador informou e às vezes uma faixa que o Indeed modela quando o empregador deixou de fora; o card rotula qual, e esse rótulo viaja na string salary, então ele deveria sobreviver até os seus dados em vez de ser descartado no parse - remuneração declarada e estimada respondem a perguntas diferentes e não devem ser tiradas na média juntas. E o Indeed intercala colocações patrocinadas com os resultados orgânicos, o que significa que a posição na lista reflete gasto publicitário além de relevância. Nenhuma das duas é um defeito a contornar; é simplesmente como o site funciona, e saber disso é a diferença entre um benchmark salarial defensável e um enganoso. Comece grátis: suas primeiras 500 linhas não custam nada e não precisam de cartão.