Soru Webden Veri Alma

okan32

Altın Üye
Katılım
12 Mayıs 2016
Mesajlar
386
Excel Vers. ve Dili
Ofis 2019- 32 Bit - Türkçe
Altın Üyelik Bitiş Tarihi
16-04-2026
Aşağıdaki kod ile ziraat katılım bankasından altın alış satış verilerini alabiliyordum. banka ana sayfa ara yüzünü değiştirdiği için kod şimdi çalışmıyor. yardımlarınızı bekliyor ve teşekkür edeyorum.
Kod:
Sub Test()

    Dim URL As String
    Dim IE As Object
    Range("H2") = Format(Now, "dd.mm.yyyy hh:mm")
    URL = "https://www.ziraatkatilim.com.tr/Sayfalar/anasayfa.aspx#"
    Set IE = CreateObject("InternetExplorer.Application")
    IE.Navigate URL
    
    Do Until IE.ReadyState = 4
    Loop
    
    Range("A2:B2") = Empty
    
    Set Divs = IE.Document.getElementsByTagName("div")
    
    For i = 0 To Divs.Length - 1
        If Divs(i).classname = "bvXAU" Then
            Range("A2") = Split(Divs(i).innertext, vbLf)(6) + 0
            Range("B2") = Split(Divs(i).innertext, vbLf)(8) + 0
            Range("A2:B2").NumberFormat = "0.00"
            
            Range("G2").Value = Range("J2").Value
            Range("G3").Value = Range("J3").Value
            Range("G4").Value = Range("J4").Value
            Range("G5").Value = Range("J5").Value
            UserForm1.Show
        End If
    Next
    
    IE.Quit
    Set IE = Nothing
  
  
End Sub
 
Katılım
30 Mart 2010
Mesajlar
240
Excel Vers. ve Dili
2007,2010,2013
Altın Üyelik Bitiş Tarihi
29-05-2021
Merhaba,

Öncelikle bu tür verileri ana sayfa yerine alt sayfalardan çekmek gerekiyor. Çünkü ana sayfa, alt sayfalara göre daha fazla değişkenlik gösterebilmekte. İlgili sitede alt sayfalarda istediğiniz verileri bulabilirsiniz.
Ayrıca neden TagName'e göre verileri alıp dizi içerisinde ClassName'i xxx olan bir şeyi buldurup sonra hücrelere ayırıyorsunuz? Bu duruma önerebileceğim şey document sınıfına ait querySelector olur. Daha etkili sonuçlar alabilirsiniz.
 

okan32

Altın Üye
Katılım
12 Mayıs 2016
Mesajlar
386
Excel Vers. ve Dili
Ofis 2019- 32 Bit - Türkçe
Altın Üyelik Bitiş Tarihi
16-04-2026
Sayın cicosz ilginiz için çok teşekkürler kod yazma konusunda iyi değilim. dediğiniz gibi bir kod yazabilirmisiniz.
 

okan32

Altın Üye
Katılım
12 Mayıs 2016
Mesajlar
386
Excel Vers. ve Dili
Ofis 2019- 32 Bit - Türkçe
Altın Üyelik Bitiş Tarihi
16-04-2026
Çok teşekkür ederim sayın cicosz süper olmuş
 
Üst