Como criar um rastreador personalizado usando o Colab e o adverttools
Publicados: 2022-05-25Neste vídeo, falaremos sobre como podemos criar nosso próprio rastreador personalizado usando o Google Colab, Advertools e algumas outras bibliotecas Python. Antes de ficar com medo ou perplexo, não. Respire fundo. Vai ficar tudo bem. Eu nem mesmo proclamo ser um codificador, mas o que eu sou muito bom é copiar e colar. Eu sei que você pode usar o botão Ctrl+C tão bem quanto eu. Vamos dar uma olhada em como podemos criar nosso próprio rastreador de SEO personalizado e como podemos colocá-lo em prática para nos ajudar a resolver alguns problemas exclusivos.
Recursos
- Acesse aqui o Colab.
- Saiba mais sobre Advertools aqui.
Transcrição do vídeo:
Vamos ver como podemos criar um rastreador personalizado usando o Google Colab, bem como Advertools, biblioteca Python.
O que é um SEO Crawler (Spider)?
Os rastreadores são ferramentas que podem rastrear páginas do site da mesma forma que um mecanismo de pesquisa faria, e isso nos ajuda a obter informações valiosas de SEO. Isso nos ajuda a ver o site, da maneira como o Google, Bing ou outros mecanismos de pesquisa veriam nosso site. Existem ferramentas que fazem isso. Existem várias ferramentas por aí que fazem isso, a mais popular provavelmente é o Screaming Frog SEO Spider, e é uma ferramenta que amamos e usamos o tempo todo, mas às vezes precisamos de uma solução personalizada.
Por que você criaria seu próprio rastreador?
A maioria dos rastreadores prontos para uso faz coisas incríveis, mas às vezes você tem uma pergunta específica que precisa ser respondida e pode criar um rastreador personalizado para controlar todas as saídas. Você só obtém os dados que deseja ou precisa. Dessa forma, você não precisa ser restringido por uma configuração de ferramenta, mas pode executar um rastreamento rápido de um site ou extrair apenas uma informação ou extrair muitas informações e organizá-las de uma maneira diferente, usando o Colab e Pitão.
O que é Advertools?
Advertools é uma biblioteca Python que permite que você faça muitas coisas. Você pode rastrear sites, gerar palavras-chave para suas campanhas de marketing de mecanismos de pesquisa, criar anúncios de texto, analisar SERPs, obter insights sobre postagens de mídia social e fazer muito mais. É uma biblioteca extremamente flexível. Ele faz muitas coisas legais e é bastante simples de usar.
Eu não me chamaria de programador. Eu diria apenas que sou decente em copiar e colar. Mesmo não sendo um programador Python aprofundado, consegui obter muitos benefícios usando uma ferramenta como Advertools.
O que nós vamos fazer
É isso que vamos fazer neste vídeo.
- Crie um novo arquivo Colab e instale Advertools
- Crie um rastreador personalizado usando adverttools
- Rastrear e analisar o site e os dados
- Visualize alguns desses resultados usando outra biblioteca Python chamada Plotly
- Exporte os dados
Etapa 1: criar um arquivo Colab e instalar Advertools
O Google Colab é uma ferramenta que vai permitir que você faça várias coisas legais. Ele permite que você execute código dentro de células para criar tabelas, criar seus próprios programas, fazer coisas personalizadas, qualquer coisa, desde aprendizado de máquina até SEO e muito mais. Se você nunca o usou antes, ele é gratuito e permite que você aproveite o poder computacional do Google gratuitamente. É muito legal, então eu recomendo que você vá dar uma olhada.
Se você ainda não estiver usando o CoLab, há muitos recursos excelentes aqui. Uma das coisas que você precisa fazer para usar uma biblioteca que está fora do Python é a instalação natural. Você precisa instalar esse programa. Na maioria das vezes você usa uma função chamada PIP e então puxa essa nova biblioteca. É um processo bastante simples de usar.
Uma das coisas que todos esses caras fazem, que constroem esses programas, é mostrar exatamente como configurá-los em seus documentos. Portanto, sempre leia esses documentos e isso permitirá que você entenda: "Como importo essas ferramentas e faço com que essas ferramentas funcionem para mim?"
Para instalar o Advertools, vamos usar esta linha de código aqui:
!pip install advertools
Depois de colocar o código aqui no bloco de celas no CoLab, vá em frente e aperte o botão play. Ele executará este bloco de código. Você deve ver algo assim, onde está instalando o código e todo o pacote aqui para que possamos usar essa biblioteca para construir nosso rastreador. Depois de ver a marca de seleção verde, você sabe que está feito.
Etapa 2: criar um rastreador personalizado usando Advertools
Em seguida, vamos querer executar uma nova linha de código.
import advertools as adv
from advertools import crawl
import pandas as pd
Você pode ir em frente e clicar no botão de código aqui e ele preencherá este novo. Vamos importar algumas partes específicas da biblioteca Advertools. Estamos importando adverttools, estamos importando o método de rastreamento. Também estamos importando algo chamado pandas. Para aqueles que não estão familiarizados com o Python, os pandas nos permitem trabalhar com nossos dados dentro de quadros de dados, basicamente criando tabelas dentro do Python.
Depois de configurar tudo isso, vá em frente e execute seu código novamente. Isso vai importar todas essas informações. Se estivermos construindo um rastreamento, você notará aqui, que está falando sobre como podemos fazer isso, como podemos importar esses rastreamentos. Existem algumas abordagens; você pode importar Advertools como fizemos e executar esta linha de comando, que fará o que estamos fazendo.
Gosto de tornar o Colab um pouco mais fácil de usar caso alguém da minha equipe queira aproveitá-lo também. Vamos fazer algo um pouco diferente do que eles mostram aqui. Mas se você seguir essa abordagem, você acertará e funcionará também.
site = "https://simplifiedsearch.net/" #@param {type:"string"}
crawl(site, 'simp.jl' , follow_links= True )
crawl_df = pd.read_json( 'simp.jl' , lines= True )
crawl_df.head()
O que vamos fazer é esta linha de código. A primeira coisa que estamos fazendo é definir uma variável e a variável será o site que queremos rastrear. Ao usar essa string de tipo de parâmetro, ele me dá uma caixa aqui, que me permite digitar aqui, qual site eu quero rastrear. Posso colocar meu site aqui. Eu posso colocar qualquer site aqui e ele definirá essa variável para mim. Assim não preciso digitar aqui. Eu posso simplesmente digitá-lo em um formulário e alguém que não está tão confortável em clicar dentro da caixa da célula pode simplesmente ir em frente aqui e digitar um lado para fora.
Nesse caso, usaremos nosso site de pesquisa simplificado, apenas porque o usaríamos o tempo todo. Vamos em frente e colá-lo aqui. Logo abaixo, estamos seguindo exatamente as mesmas regras que eles estabeleceram aqui. Estamos usando Advertools.crawl e, em seguida, estamos usando o site como nossa variável. Temos um arquivo de saída. Então queremos que ele siga os links dentro do site.
Também fazemos a próxima etapa, onde definimos o quadro de dados de rastreamento e dizemos a ele para abrir nosso arquivo de saída porque ele será gerado em JSON. Os pandas vão ler o JSON e criar um data frame para nós. No final, estou nos dizendo apenas para mostrar o cabeçalho desse quadro de dados, para garantir que tudo esteja funcionando conforme o esperado. Assim que seguirmos esta etapa e executarmos esta célula, estaremos rastreando o site e ele fará um despejo de dados abaixo e poderemos ver todas as diferentes funções nesse rastreamento.
Eu vou em frente e executar esta célula. Pode levar alguns minutos apenas porque está executando um rastreamento de todo o site. Quando terminarmos, falaremos sobre como podemos aproveitar os dados de rastreamento para extrair informações específicas.
Etapa 3: rastrear e analisar o site e os dados
Agora o site rastreou e você pode ver que tenho uma lista de URLs, títulos, meta descrições, ponto de vista, conjunto de caracteres, H1s, H2s e H3s. Todas essas informações estão sendo puxadas para este quadro. Se você quiser vê-lo um pouco mais limpo, você pode apertar este botão mágico aqui e o Google vai transferir esses dados aqui para um quadro de dados um pouco mais fácil de trabalhar. Eu tenho um número total de colunas aqui de 266. São muitas colunas com as quais posso trabalhar.
Você pode estar se perguntando o que há em todas essas colunas. Podemos voltar aqui para as ferramentas de anúncios e você pode ver todos os diferentes elementos. Há muitos dados de exportação que podemos analisar e extrair muitas informações interessantes.
Se quisermos ver uma lista de todas as diferentes colunas que temos disponíveis, podemos executar este código:

columns = list (crawl_df)
columns
Precisamos pegar as colunas primeiro e criar uma lista delas. Usaremos a lista de códigos e depois colocaremos parênteses, e dentro do crawl_DF, que é o nome do nosso data frame, e chamaremos as novas colunas da lista. Aqui temos colunas e executamos essa célula, e você pode ver todas essas diferentes colunas possíveis. É um pouco de informação, como você pode ver, está procurando um monte de informação.
E se você quiser ver apenas uma parte dessa informação? E se você quisesse apenas obter todos os títulos ou todas as meta descrições ou algumas das informações da tag H, ou talvez quisesse ver todas as páginas e o tipo de marcação schema.org que você pode ter nelas. É aqui que ter algo como o Advertools é útil.
Digamos que queiramos examinar os tipos JSON-LD em nossas páginas.
json_df = crawl_df[[ 'url' , 'jsonld_@type' ]]
json_df
Podemos começar com algum novo código. Vamos em frente e criar um novo quadro de dados chamado JSON-DF. Queremos obter algumas informações de nosso quadro de dados original. A primeira coisa que vamos querer fazer, deixe-me descer aqui um pouco para facilitar o rastreamento de todos, _DF. Vamos usar um colchete e outro colchete.
A primeira coisa que queremos extrair é o URL. Sabemos que a URL é importante porque precisamos conhecer todas as páginas do nosso site, todas as URLs. A próxima coisa que queremos fazer é encontrar o tipo JSON. Podemos voltar a esta lista e podemos ir do tipo JSON, copiar isso e dizer, eu também quero saber o tipo JSON. Vou seguir em frente e manter isso consistente, assim seguimos as melhores práticas. O que fazemos nesta pequena fila aqui? Dissemos 'crie um novo quadro de dados' e use os dados do nosso banco de dados original, do nosso quadro de dados original e retire apenas os URLs e os tipos JSON-LD.
Se eu executar isso, ele criará um novo quadro de dados com apenas essas informações. Para ver esses dados, posso simplesmente ir em frente, colocar JSON_DF, fazer uma nova célula e pressionar enter. Ele me fornece uma lista de todas as minhas páginas e o tipo de marcação associado a essas páginas específicas. Isso pode ser muito útil se você quiser procurar rapidamente e encontrar todo o JSON em seu site, quais tipos você possui e qual marcação você possui.
Além disso, você tem algumas páginas sem marcação? Você pode identificá-los rapidamente. Temos esses novos dados onde temos todos os nossos URLs e temos todos os nossos tipos JSON-LD que sabemos que existem nessa página.
Passo 4: Visualize os Resultados
Digamos que queremos criar um relatório ou gráfico rápido para mostrar a um cliente ou outra pessoa, ou a quantidade de informações e dados que adicionamos a este site para eles e os diferentes tipos de informações.
A primeira coisa que preciso fazer é contar todos os diferentes tipos de marcação que foram adicionados e então posso visualizá-la. Vamos começar contando isso e criando um novo quadro de dados. Eu já criei este código e vou orientá-lo:
json_counts = json_df[ 'jsonld_@type' ].value_counts()
json_counts = json_counts.reset_index()
json_counts
É chamado de contagens JSON. Este é um novo quadro de dados. Estamos pegando os dados da coluna JSON-LD aqui. Estamos fazendo com que conte os valores exclusivos que estão nesta coluna. Quando eu executo este código e digo a ele para produzi-lo, você verá que temos todas essas informações contadas.
O que está fazendo é que está me dando esse erro porque está encontrando alguns zeros ou algum NAS na lista. Tudo bem, porque você verá em apenas um segundo que temos essa informação aqui. Aqui estão todos os diferentes tipos de marcação e tudo foi definido para nós.
Você também está percebendo que não se parece muito com um quadro de dados como está aqui. Temos que reindexar este quadro de dados, ou esta variável, em um quadro de dados para que funcione corretamente. Vamos em frente e fornecer nosso quadro de dados e executar este código:
json_counts = json_counts.reset_index()
Quando executarmos isso, você verá que temos um quadro de dados. Temos o índice, que é o termo. Então temos o tipo JSON-LD e a contagem disso. Ainda não temos gráfico. Ainda temos apenas outro quadro de dados. O que precisamos fazer para transformar esse quadro de dados em uma visualização ou um gráfico? Vamos usar algo chamado Plotly.
Plotly é outra biblioteca, muito semelhante ao Advertools que podemos usar para criar visualizações e, especificamente, vamos usar o Plotly express. A primeira coisa que precisamos fazer é instalar o Plotly, vamos em frente e fazemos o PIPinstallPlotly, vou executar esta célula. Já foi instalado nesta planilha, mas está tudo bem. Como você pode ver, ele nos dirá que já está instalado, já satisfeito. Estamos prontos para ir.
Pegue o código que acabamos de copiar daqui e cole-o de volta em nosso rastreador. Não precisamos desse meio porque são dados que não estamos usando. Estamos usando nossos próprios dados. Precisamos importar Plotly express como PX e precisamos conectar nosso novo banco de dados aqui para obter as informações corretas em nosso gráfico.
! pip install plotly
import plotly.express as px
fig = px.bar(json_counts, x='index', y='jsonld_@type')
fig.show()
Nosso quadro de dados foi chamado de contagens JSON. No nosso X vamos usar o índice e no Y vamos usar o tipo JSON. Por que eu escolhi aqueles? O índice é onde estão as palavras. Queremos tê-los no X, e então a contagem está no JSON-LD @type, e esse será o nosso Y, que nos dirá quantos estão em cada uma dessas colunas. Vamos em frente e colocar isso aqui. Bem simples. E então fig.show mostrará esse gráfico. Então, agora, temos todos os nossos diferentes tipos aqui, e aqui, temos as diferentes quantidades de cada tipo em um bom gráfico.
Se você quiser compartilhar isso, você pode baixá-lo como um PNG e o Plotly agora fará o download para o seu computador. Você pode pegar isso e dizer: "Colocamos essa marcação nessas muitas páginas". Uma maneira muito legal de visualizá-lo rapidamente.
Etapa 5: exportar os dados
No entanto, e se quisermos baixar todos esses dados e trabalhar com eles, talvez nas planilhas do Google ou em outra coisa? Bem, você também pode fazer isso para fazer isso. Só precisamos usar mais uma linha de código e devemos estar prontos. Digamos que vamos baixar esta tabela aqui com todas as páginas do nosso site e o tipo JSON-LD. Podemos ir em frente para esta célula ou qualquer outra que você queira, e então vamos criar uma nova linha de código.
Precisamos usar algo do Google Colab chamado arquivos de importação. Essa é a primeira coisa que vamos fazer. Em seguida, vamos encontrar esse quadro de dados, que é JSON-DF. Vamos adicionar isso abaixo e dizer .2_CSV, e então vamos dar um nome. Podemos chamar isso de JSON_DF.CSV. Depois de digitar esse código, você criou seu arquivo CSV. Se eu olhar aqui na minha pasta, você verá o arquivo aqui.
A partir daqui, eu poderia ir em frente e baixá-lo, ou poderia colocar uma linha de código aqui que nos ajudasse a baixá-lo ainda mais rápido. Eu poderia dizer files.download, e então eu vou em frente e chamo esse arquivo, que acabei de criar, e pedi para o Colab fazer o download direto para mim. Quando eu executo essa célula ela vai baixar aquele arquivo e aqui está. Posso ir em frente, clicar em abrir e agora tenho esse arquivo CSV que posso fazer o que quiser com qualquer tipo de ferramenta de planilha que tiver. Eu também posso ver aqueles que possivelmente estão faltando alguma marcação.
Aí está. Avançamos e criamos nosso próprio rastreador personalizado. Extraímos alguns dados personalizados. Visualizamos esses dados e baixamos esses dados para uso em outros programas. Fizemos tudo isso, e eu não sou programador de computador, nem tento fingir ser um. Como eu disse antes, eu sou apenas bom em copiar e colar. Vocês podem descobrir essas coisas também.
Quando você tem dúvidas, sempre há soluções legais. Se você estiver disposto a experimentar algo novo e diferente, eu recomendo que você brinque no Colab. Existem muitos recursos excelentes por aí. Há muitas pessoas que são muito mais inteligentes do que eu fazendo coisas muito mais incríveis com as quais aprendi muito e me ajudaram no meu jogo de marketing, pesquisa, rastreamento e muito mais.
Se você tiver alguma dúvida sobre o que fizemos hoje, por favor, comente abaixo. Também vou dar acesso a esse arquivo específico do CoLab e até compartilharei passo a passo o código que usamos ao longo do caminho. Muito obrigado por assistir. Não se esqueça de se inscrever e até a próxima, bom marketing.