Bu yazıda, Google Spreadsheet kullanarak bir XML site haritasından URL'lerin nasıl çekileceğini anlatacağım.

XML site haritasının URL'lerini spreadsheet'e çekebilmek için şu adımları izleyin:

  • Öncelikle, URL'leri çekmek istediğiniz XML site haritasının URL'ini bulun. Örneğin: https://www.seoium.com/sitemap_index.xml
  • Sonrasında yeni bir Google e-tablo oluşturmanız gerekiyor. Bunun için sheets.new'e tıklamanız yeterli 🙂
  • Yeni bir e-tablo oluşturduktan sonra, menü çubuğunda bulunan araçlar seçeneğinin altındaki komut dosyası düzenleyicisini seçin.

  • Açılan komut dosyası düzenleyicisine aşağıdaki JavaScript kodlarını ekleyin ve dosyayı kaydedin.

/*
* https://www.seoium.com
*/

function getsiteURLs(singleURL,namespace) {

try {
var xml = UrlFetchApp.fetch(singleURL).getContentText();
var document = XmlService.parse(xml);
var root = document.getRootElement()
var singlename = XmlService.getNamespace(namespace);

var urls = root.getChildren('url', singlename)
var locs = []

for (var i=0;i locs.push(urls[i].getChild('loc', singlename).getText())
}

return locs
} catch (e) {
return e
}
}

Sitemap dosyasındaki URL'leri çekmek için gerekli kodu komut dosyanıza yüklediniz. Şimdi sıra formülü kullanmaya geldi 🙂

Bunun için boş bir hücreye aşağıdaki komutu yazmanız yeterli olacaktır.

=getsiteURLs("https://www.seoium.com/post-sitemap.xml", "http://www.sitemaps.org/schemas/sitemap/0.9")

Bütün bu kodlarla uğraşmak yerine oluşturulan yapının demosunu görüp, kopyasını oluşturmak isterseniz bunun için aşağıdaki linke tıklamanız yeterli olacaktır.