Google Trends API Kullanımı - R İle Verileri Nasıl Elde Edebilirsiniz?
Google Trends ürününden faydalanmak adına sizlere, aslında işlerinizi daha otomatize edebilmek için bu yazımda R Studio ile Trends API bağlantısını anlatacağım. Detaylara geçmeden önce, eğer henüz R Studio kurulumu ve ayarları hakkında bilgi sahibi değilseniz yazımı inceleyebilirsiniz.
Google Trends API Kurulumu
R Studio'yu açıp aşağıdaki kodları yapıştırıp çalıştıralım. Bu sayede paketlerimizi yüklemiş olacağız:
devtools::install_github('PMassicotte/gtrendsR')
library(gtrendsR)
library(reshape2)
Örneğin ben tüm web sonuçları için TR lokasyonunda "transfer haberleri" kelimesinin bir önceki güne (last day) göre verileri (data) çekiyorum;
google.trends <- gtrends(c("transfer haberleri"), geo = c("TR"), gprop = "web", time = "now 1-d")[[1]]
gprop = web kısmı ise bu verileri tüm web sonuçlardan mı yoksa sadece "News" gibi sonuçlardan mı istediğinizi belirttiğiniz kısım.
Geçerli tarih formatları (Trends için);
"now 1-H" Last hour
"now 4-H" Last four hours
"now 1-d" Last day
"now 7-d" Last seven days
"today 1-m" Past 30 days
"today 3-m" Past 90 days
"today 12-m" Past 12 months
"today+5-y" Last five years (default)
"all" Since the beginning of Google Trends (2004)
"Y-m-d Y-m-d" Time span between two dates (ex.: "2010-01-01 2010-04-03")
"transfer haberleri" için Related topics ve Related queries kısımlarındaki verileri de aşağıda kodlarla çekiyorum;
head(gtrends("transfer haberleri")$related_topics)
head(gtrends("transfer haberleri")$related_queries)
Son olarak da bu verileri aşağıdaki kod ile PC'ye indirebilir ve veri görselleştirme işlemlerine başlayabilirsiniz.
write.csv(google.trends, file = "transfer.csv")
Örnek bir çıktı:
Birden fazla ülke seçmek isterseniz de aşağıdaki kodu kullanabilirsiniz. Örneğin hem Almanya hem de Avusturya ülkelerine ait bilgileri almak isterseniz:
google.trends = gtrends(c("COVID-19"), geo = c("DE", "AT"), gprop = "web", time = "now 7-d")[[1]]
Google Trends API İle Neler Yapabilirsiniz?
Google Trends kullanarak özellikle güncel içerikleri anında tespit edebilir, daha önceden belirli zaman aralığında trend olmuş arama terimlerini çok kolay bir şekilde analiz edebilirsiniz.
Black Friday ya da yılbaşı gibi birçok önemli gün için verilere bu şekilde kolayca erişebilirsiniz. Geçen yılın verileriyle de en çok hangi kelimelerde artış olduğunu analiz edip öngörülerinizi bu doğrultuda oluşturabilirsiniz.
Üstelik indireceğiniz Trends verilerini çok rahat bir şekilde Google Data Studio ya da farklı uygulamalarda kullanıp görselleştirme konusunda da daha farklı raporlar oluşturabilirsiniz.
Örneğin "samsunspor" kelimesinin son 30 günlük verilerini içeren API verileri aşağıda görünmektedir:
Bir başka örnek:
Verileri günlere göre alıp bu günleri ayrı grafikler halinde de sunabilirsiniz. Kategoriyi genelde ben seçmiyorum o yüzden default olarak “0” değeri görünüyor.
Youtube sonuçları için de ek verileri API ile sağlayabilirsiniz. gprop kısmına “youtube” yazmanız yeterli:
Bazı durumlarda tarih formatı ile alakalı sorunlar yüzünden veriler tam uyuşmayabilir, formatı değiştirmeniz gerekebilir. Sys.setenv (TZ = "UTC") gibi.
Birden fazla kelimeyi de yine API ile çekebilirsiniz. Bunun için aşağıdaki kodları kullanabilirsiniz. Örneğin son 12 aylık içinde COVID-19, Koronavirüs ve Coronavirüs kelimelerini Türkçe sonuçlar için içeren web kaynaklı Trends verileri için aşağıdaki kodu çalıştırdım:
google.trends <- gtrends(c("COVID-19", "Coronavirüs", "koronavirüs"), geo = c("TR"), gprop = "web", time = "today 12-m")[[1]]
Tüm veriyi bu sayede birden fazla kelime özelinde çekmiş oldum;
Trends API ile Sezonsal Eğilimleri Belirleme
API’yi daha geniş bir tarih aralığında çalıştırırsanız sezonsallık hakkında daha fazla bilgi sahibi olabilirsiniz. 100 sayısı üzerinden bir sıralama yapıldığı ve bu sıralamanın kelimelerin aranma hacmi konusunda net bilgi vermediğini lütfen unutmayın.
Sezonsallıkta sadece aranma hacimlerine odaklanmak için ise seo.do gibi araçları kullanabilirsiniz:
Çok daha güncel bir kelime olan “coronavirüs” kelimesi gibi kelimeleri de basit bir şekilde Google Trends API ile görselleştirebilirsiniz.
Google Trends API’yi R ile kullanarak yapabileceğiniz birçok konu var aslında. Bu API’yi sadece SEO çalışmaları için değil, hayatınızdaki birçok alanda da kullanabilir ve verileri istediğiniz şekilde görselleştirebilirsiniz.
Tüm kodlar;
devtools::install_github('PMassicotte/gtrendsR')
library(gtrendsR)
library(reshape2)
google.trends <- gtrends(c("transfer haberleri"), geo = c("TR"), gprop = "web", time = "today 12-m")[[1]]
head(gtrends("transfer haberleri")$related_topics)
head(gtrends("transfer haberleri")$related_queries)
View(google.trends)
write.csv(google.trends, file = "transfer-ajansspor.csv")
Kaynaklar;
https://cran.r-project.org/web/packages/gtrendsR/gtrendsR.pdf
https://support.google.com/trends/answer/4365533?hl=tr&ref_topic=6248052
https://datascienceplus.com/analyzing-google-trends-data-in-r/