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.