Selam,

Bu kodun neden çalışmadığına dair en ufak bir fikrim yok. Aynı veriyi python ile alabiliyorum. Başka sitelerden de aynı yöntemle veri alabiliyorum. /text() fonksiyonuyla da denedim bir türlü çalışmıyor. Merkez bankasında mı sorun var, anlamadım.

=IMPORTXML("www.tcmb.gov.tr"; "/html/body/div/div/table[1]/tbody/tr[2]/td[2]")

 

isokur.xsl dosyasını yani stillendirme dosyasını göz ardı edip doğrudan xml kaynak dosyasına ulaşıp veri çekmeye çalıştığı için bulamadığından boş veri döndürüyor. bunun için doğrudan stillendirilmemiş xml halinin içeriğine ulaştığınızda (amerikan doları alış rakamını çekeceğinizi varsayarak) "//Tarih_Date/Currency[1]/ForexBuying" bu xpath dönüyor. haliyle html değil doğrudan xml xpath eklerseniz çalışıyor.

//Tarih_Date/Currency[1]/ForexBuying

=IMPORTXML("https//wwwtcmbgovtr/kurlar/202403/29032024xml", "//Tarih_Date/Currency[1]/ForexBuying")

p.s.: linke çevirmesin diye adres noktalamasını kaldırdım.

phonex

Oldu. Teşekkür ederim. Son bir soru: Peki Chrome'da stillendirilmemiş xml'e nasıl erişebilirim. Yani şimdi kurcaladım bir ama "//Tarih_Date/Currency[1]/ForexBuying" xpath'ini nereden aldığınızı anlayamadım.

zamsalak

sağ tıklayıp inspect derseniz size formatlanmış html çıktısını sağdaki dock side tarafında vermiş, sonrasında çekeceğiniz veriye sağ tıklayıp copy > full xpath derseniz size html çıktısının bir kopyasını verecektir. python bilmemekle beraber python stil dosyasını da dikkate aldığından boş veri çevirmeyip istediğiniz sonucu önünüze dökmüş.

sağ menüden view page source ya da ctrl+u kısayolunu yaparsanız karşınıza stillendirilmemiş xml kaynak dosyası gelecektir. orada zaten görerek yolu çekersiniz. eğer tarih_date altındaki biçimlenmiş türkçe ve ingilizce farmatlı tarihlere erişmek isterseniz xpath e //@Tarih yahut //@Date xpath i ile erişebilirsiniz.

phonex
1

mobil görünümden çık