Francesco Giammanco

Usare Python per la SEO tecnica

Molte delle operazioni compiute da un SEO tecnico si occupano di collezionare dati e organizzarli nel modo più congeniale possibile. Molti di questi strumenti utilizzano Python per collezionare i dati.

Cos'è Python?

Python è sia un linguaggio di programmazione che il software di interpretazione necessario a leggere ed eseguire il codice sorgente.

E' possibile lavorare in Python sia su Linux, che su MacOS o Windows, ed è possibile scaricare gratuitamente lo strumento per iniziare a lavorare dal sito https://python.org/.

Per scrivere del codice valido bisogna però conoscere le sintassi propria di questo linguaggio di programmazione, che ha una curva di apprendimento abbastanza rapida, e per certi versi intuitiva.

Per chi fosse curioso dell'origine del nome, non ha a che fare con il noto serpente ma con il gruppo comico Monty Python. Coloro che programmano in Python sono chiamati Pythonistas.

Una delle prime versioni di Google è stato scritto in questo linguaggio e tuttora si tratta di uno dei loro linguaggi ufficiali server side.

Strumenti alternativi

Molti sistemi hanno Python installato di default, ma bisogna stare attenti alla versione a causa del passaggio dalla versione 2, che è considerata deprecata, alla versione 3.

Si può usare dunque uno strumento di programmazione che parte da linea di comando del proprio sistema operativo, utilizzare un IDE (ambiente di sviluppo integrato, un software che aiuta a scrivere il codice) o un tool in cloud come Jupiter o Colab di Jupiter.

Automatizzare lavori di SEO tecnica

Esiste una libreria compatibile con Python per ogni tipo di raccolta dati, letteralmente. E se non esiste ci sarà qualcuno che la starà sviluppando, sicuramente.

Gli strumenti di web scraping nascono come applicazioni che utilizzano questo linguaggio di programmazione ma non sono gli unici, come vedremo qui di seguito. Per semplificare il lavoro di ricerca possiamo appoggiarci ad un articolo di Derek Hawkins, che suddivide le richieste più comuni di un SEO in:

1) Velocità del sito

Lo strumento più utilizzato (ma non dimentichiamoci GTmetrix) per valutare la velocità di un sito è sicuramente PageSpeed Insight, tanto valido quanto difficile da utilizzare per analizzare un sito per intero.

Si tratta infatti di uno strumento che ci fornisce i dati di una pagina per volta e richiede reiterati utilizzi per riportare un quadro complessivo del sito.

Le librerie da utilizzare sono SeleniumPandasBeautifulSoup e Time.

Soluzione alternativa

Esiste in realtà un metodo molto semplice per raggiungere questo scopo, e che coinvolge l'utilizzo delle API di PageSpeed e Google Sheets.

2) Razionalizzazione dei dati di Google Trends

Per avere un quadro abbastanza completo di un determinato settore è molto utile iniziare con strumenti che danno uno sguardo di massima al trend delle parole chiave o degli argomenti da trattare.

Anche per questo, il miglior punto di vista è più facile da raggiungere mettendo in colonna (letteralmente) tutto ciò che ci interessa e cominciare a manipolare i dati confrontandoli come meglio ci fare.

Per fare ciò possiamo utilizzare le librerie PyTrends, Pandas, MatPlotLib o affidarci ad una sorta di pseudo API realizzate con Python (scarica qui).

3) Web Scraping

Si tratta sicuramente del campo di applicazione più ampio e più interessante, perché ci permette di avere una rappresentazione semantica del sito, ma anche degli anchor, e di quanto possa essere più utile.

Lo scraping non si limita alla scansione e alla catalogazione degli elementi presenti all'interno di un sito, ma può essere applicato ai social, come per esempio alla creazione di un elenco dei titoli di Youtube presenti su un canale, o che rispondono ad una specifica query.

Le librerie coinvolte in questo tipo di scansione sono BeautifulSoup, Pandas, Reurllib.

Esempi di script utili

Oltre ai tools SEO più famosi, esiste una sorta di sottobosco di utility relative alla SEO tecnica. Si tratta di script che effettuano una specifica operazione realizzata su linea linea di codice o comunque con strumenti non commerciali, e in quanto tali vanno studiati.

Elementi SEO riguardanti la performance

Tramite l'utilizzo delle PageSpeed Insight API e di qualche linea di codice ben scritta è possibile far partire una ricerca che colleziona gli elementi SEO (HTML, indicazioni sulla cache, ect) necessari ad effettuare una disamina tecnica e ad organizzarli.

Confrontare il contenuto

A volte il miglior modo di ottenere un risultato è lavorare con qualcosa che esiste già ed adattarlo ai propri scopi.

L'operazione che tratteremo rientra in questa casistica, visto che utilizza Screaming Frog per scansionare il sito ma implementa uno script per confrontare il contenuto alla ricerca di duplicazioni.

Analizzare al meglio di dati di Analytics

Esistono degli strumenti che implementano le Core Reporting API di Analytics al fine di realizzare più velocemente le queries che ci interessano.

Per utilizzarli, basta cliccare su https://ga-dev-tools.appspot.com/query-explorer/ e selezionare il nostro account di riferimento.

Nel caso in cui volessimo estrarre i dati in un modo ancora più personalizzato, è il caso di seguire la procedura indicata da SearchEngineWatch che utilizza una parte dei dati offerti dal tool al fine di incasellarli in una struttura più vicina ai nostri bisogni.