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, lendpoint 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