(not provided): E' possibile fare SEO senza le parole chiave?
Keyword Discovery: Costruisci il tuo tool fatto in casa!
1. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
1/40
Keyword Discovery
Costruisci il tuo tool fatto in casa!
di Martino Mosna
2. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
2/40
●
Specialista SEO dal 2006
●
Freelance dal 2011
Chi vi parla: Martino Mosna
3. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
3/40
Di cosa parleremo...
1. Perché costruirsi un tool da soli
2. Prepariamo gli strumenti ed il materiale
3. Costruiamo il tool!
4. Dimostrazione live
5. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
5/40
Ci sono molti tool di Keyword Discovery
●
Google Ads Keyword Tool
●
Seo Hero
●
Ubersuggest
●
SuggestMrx
●
Molti altri...
6. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
6/40
●
Sono lenti
●
Sono costellati di informazioni non rilevanti
●
Non sono aggiornati
●
Sono limitati
●
Costano troppo
...ma hanno tutti qualche problema.
7. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
7/40
Ah, se solo ci fosse un tool...
●
Che mi dia solo le keyword
●
Velocemente
●
Senza fronzoli
●
Senza limiti
●
Gratis
8. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
8/40
Dividere il problema in due
1. un tool snello per raccogliere velocemente un
gran numero di parole chiave
2.esaminare la lista di parole chiave nel Keyword
Tool di Google Ads per raccogliere alla fonte i
dati aggiornati sui volumi
10. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
10/40
Avete un attacco di SEO?
11. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
11/40
La magia del Suggest
Dove c’è un Suggest, c'è
quasi sempre un'API
pubblica
Il Suggest di Google
restituisce i dati in
formato JSON
12. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
12/40
Il Suggest di Google
E' un JSON un po' poco
standard, ma pur sempre
qualcosa che assomiglia a
un JSON.
http://suggestqueries.google.com/complete/search?
client=firefox&q=google suggest&hl=it
13. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
13/40
Il nostro coltellino svizzero
14. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
14/40
La Funzione principale
=ImportJSON()
Custom Script
https://github.com/bradjasper/ImportJSON
15. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
15/40
Altre Funzioni utili
=SPLIT( )
=DESTRA( )
=LUNGHEZZA( )
=UNIQUE( )
=SORT( )
=MATR.TRASPOST
A( )
=ARRAYFORMULA
( )
=CONCATENA( )
=SE( )
per suddividere il testo su più celle
per rimuovere del testo a partire da destra
per definire la lunghezza del testo
per restituire solo valori unici
per mettere in ordine alfabetico
per trasformare righe in colonne
per applicare una formula a un intervallo
di celle
per concatenare i valori di più celle
per creare delle condizioni sulla base di
variabili
16. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
16/40
Altre opzioni da ricordare
La Convalida dei Dati:
per creare i menu a tendina
17. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
17/40
Dimenticato qualcosa?
19. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
19/40
Colonna 1
L'elenco alfanumerico sulla
base del quale andare a
costruire il listone di parole
suggerite
20. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
20/40
Colonna 2
L'elenco di URL con la chiamata alle
API, così costruite...
1. la base URL:
http://suggestqueries.google.com/c
omplete/search?client=firefox&q=
2.la parola chiave
3.concateniamo dopo uno spazio la
lettera/numero della colonna 1
4.le opzioni di lingua
5.le opzioni del motore di ricerca
=CONCATENA("http://suggestqueries.google.com/complete/
search?client=firefox&q=";'Lista keyword'!$A$2;"
";A6;$B$2;$B$1)
21. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
21/40
Colonna 3
Si accendono i
motori di
IMPORTJSON…
Le funzioni
noTruncate e
noHeaders sono utili
per ripulire i dati
del JSON "sporco"
=IMPORTJSON(B5;"";"noTruncate,noHeaders")
22. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
22/40
Colonna 4
Con una formula di elaborazione del testo andiamo a
rimuovere il testo della parola chiave iniziale (parola +
lettera/numero)
=DESTRA(C6;LUNGHEZZA(C6)-LUNGHEZZA('Lista
keyword'!$A$2)-3)
24. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
24/40
Le intestazioni
1. una cella per la keyword
2.una cella con la Convalida dei Dati a tendina
per le Proprietà di Google
3.una cella con la Convalida dei Dati a tendina
per la lingua
25. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
25/40
La formula magica /1
Formula CONCATENA applicata tramite
ARRAYFORMULA per concatenare tutte le righe
della colonna 4 del foglio di estrazione dati
=ARRAYFORMULA(CONCATENA('Dati grezzi'!
D5:D41 & ","))
26. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
26/40
La formula magica /2
Aggiungiamo la formula SPLIT per separare il
testo concatenato su più celle in riga
=SPLIT(ARRAYFORMULA(CONCATENA('Dati
grezzi'!D5:D41 & ","));",")
27. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
27/40
La formula magica /3
Aggiungiamo la formula MATR.TRASPOSTA per
trasformare la riga in colonna
=MATR.TRASPOSTA(SPLIT(ARRAYFORMULA(CONCATE
NA('Dati grezzi'!D5:D41 & ","));","))
28. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
28/40
La formula magica /4
Ordiniamo tutto in ordine alfabetico discendente
=SORT(MATR.TRASPOSTA(SPLIT(ARRAYFORMULA(CO
NCATENA('Dati grezzi'!D5:D41 &
","));","));1;VERO)
29. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
29/40
La formula magica /5
E infine, ripuliamo dai doppioni
=UNIQUE(SORT(MATR.TRASPOSTA(SPLIT(ARRAYFOR
MULA(CONCATENA('Dati grezzi'!D5:D41 &
","));","));1;VERO))
31. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
31/40
Gestire le opzioni a tendina /1
Vanno riservate delle
celle da compilare in
modo dinamico.
32. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
32/40
Gestire le opzioni a tendina /2
Usiamo una serie di formule SE annidate una
dietro l'altra per porre le condizioni
=SE('Lista keyword'!B2="Web";"";
SE('Lista keyword'!B2="Youtube";"&ds=yt";
SE('Lista keyword'!B2="Images";"&ds=i";
SE ('Lista keyword'!B2="News";"&ds=n";
SE('Lista keyword'!B2="Shopping";"&ds=sh")))))
=SE('Lista keyword'!C2="Italiano";"&hl=it";
SE('Lista keyword'!C2="Tedesco";"&hl=de";
SE('Lista keyword'!C2="Inglese";"&hl=en")))
33. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
33/40
Gestire le opzioni a tendina /2
Usiamo una serie di formule SE annidate una
dietro l'altra per porre le condizioni
=SE('Lista keyword'!B2="Web";"";
SE('Lista keyword'!B2="Youtube";"&ds=yt";
SE('Lista keyword'!B2="Images";"&ds=i";
SE ('Lista keyword'!B2="News";"&ds=n";
SE('Lista keyword'!B2="Shopping";"&ds=sh")))))
=SE('Lista keyword'!C2="Italiano";"&hl=it";
SE('Lista keyword'!C2="Tedesco";"&hl=de";
SE('Lista keyword'!C2="Inglese";"&hl=en")))
[ACCROCCHIO]
[ACCROCCHIO]
35. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
35/40
Cosa non si può fare
Non si possono estrarre i dati
delle keyword correlate.
Per quelle va fatto per forza
di cose lo scraping di Google
e con Google Sheets non si
può.
36. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
36/40
Cosa si può fare in più
Ci sono molte altre altre API accessibili
pubblicamente, ognuna con il suo formato
differente. Ad esempio...
●
Amazon
●
DuckDuckGo
●
Google Images
●
Bing
●
Alibaba
●
Wikipedia
37. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
37/40
Come fare per scoprire gli endpoint
Utilizzare gli strumenti per sviluppatori dei browser
Nel momento in cui effettui una ricerca e compare un
suggerimento, l’endpoint compare nelle richieste di rete
39. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
39/40
Bibliografia
Custom Script per ImportJSON
https://github.com/bradjasper/ImportJSON
MEGASUGGESTONE – DEMO
https://docs.google.com/spreadsheets/d/1hnihSG21D_qVUmPMqukVhd-bPQgZsjjX3jw6vBlDEZI/edit?usp=sharing
Informazioni sulle opzioni delle API di Autocomplete di Google
https://shreyaschand.com/blog/2013/01/03/google-autocomplete-api/
40. Advanced SEO Tool – 29 Marzo 2019, Rimini
@martinomosna - #advSEOtool
40/40
Grazie!
Spazio alle domande...
Per ulteriori informazioni
Email: info@martinomosna.com
Twitter: @martinomosna
LinkedIn: /in/martinomosna