Merhaba,
Şu şekilde, belirtilen url adreslerinden belirtilen title kısmından veri çeken bir kodum var;
from tkinter import *
from datetime import datetime as dtm
from bs4 import BeautifulSoup as Bf
import requests as rq
class Application(object):
def __init__(self):
self.main()
self.veri_cek()
def main(self):
self.pencere1 = Tk()
self.pencere1.title("KRIPTO PARALAR VERI CEKME")
self.pencere1.resizable(FALSE, FALSE)
self.kripto_isimleri = ["BTC","ETH","SUSHI","SUSHIUP","AAVE","AAVEUP"]
self.satir_sayisi = 1
for self.i in self.kripto_isimleri:
self.etiket = Label(self.pencere1, text=self.i, width=15)
self.etiket.grid(row=self.satir_sayisi, column=1)
self.satir_sayisi+=1
self.satir_sayisi+=1
self.verileri_guncelle = Button(self.pencere1, text="VERİLERİ GÜNCELLE", command=self.veri_cek)
self.verileri_guncelle.grid(row=self.satir_sayisi, column=1, columnspan=2)
self.satir_sayisi+=1
self.guncelleme_zamani = Label(self.pencere1, text=dtm.now())
self.guncelleme_zamani.grid(row=self.satir_sayisi, column=1, columnspan=2)
def veri_cek(self):
self.r1 = rq.get('https://www.binance.com/en/trade/BTC_BUSD')
self.r2 = rq.get('https://www.binance.com/en/trade/ETH_BUSD')
self.r3 = rq.get('https://www.binance.com/en/trade/SUSHI_USDT')
self.r4 = rq.get('https://www.binance.com/en/trade/SUSHIUP_USDT')
self.r5 = rq.get('https://www.binance.com/en/trade/AAVE_USDT')
self.r6 = rq.get('https://www.binance.com/en/trade/AAVEUP_USDT')
self.source1 = Bf(self.r1.content,"lxml")
self.source2 = Bf(self.r2.content,"lxml")
self.source3 = Bf(self.r3.content,"lxml")
self.source4 = Bf(self.r4.content,"lxml")
self.source5 = Bf(self.r5.content,"lxml")
self.source6 = Bf(self.r6.content,"lxml")
self.etiket_1 = self.source1.title
self.etiket_2 = self.source2.title
self.etiket_3 = self.source3.title
self.etiket_4 = self.source4.title
self.etiket_5 = self.source5.title
self.etiket_6 = self.source6.title
self.deger_1 = self.etiket_1.text
self.deger_2 = self.etiket_2.text
self.deger_3 = self.etiket_3.text
self.deger_4 = self.etiket_4.text
self.deger_5 = self.etiket_5.text
self.deger_6 = self.etiket_6.text
self.cekilen_veriler = [self.deger_1, self.deger_2, self.deger_3, self.deger_4, self.deger_5, self.deger_6]
self.satir_sayisi = 1
for self.i in self.cekilen_veriler:
self.etiket = Label(self.pencere1, text=self.i, width=30)
self.etiket.grid(row=self.satir_sayisi, column=2)
self.satir_sayisi+=1
self.satir_sayisi+=2
self.guncelleme_zamani = Label(self.pencere1, text=dtm.now())
self.guncelleme_zamani.grid(row=self.satir_sayisi, column=1, columnspan=2)
app = Application()
mainloop()
Verileri güncelle butonuna bastığım zaman tüm fonksiyonu yeniden çalıştırıyor fakat anlık olarak veriyi çekmediğini düşünüyorum. Bunu bir döngüde konsol üzerinden de çalıştırdım. Sürekli aynı veriyi çekiyor.
Site içeriğindeki farklı bir alandan class etiketini vererek denedim yine olmadı.
Nasıl bir çözüm üretebiliriz, her yenileme yapıldığında anlık güncel veriyi getirebilmesi için?