Обновление графического интерфейса tkinter в режиме реального времени

#python #tkinter

#python #tkinter

Вопрос:

Я создаю графический интерфейс цены биткойнов. И мне было интересно, есть ли какой-нибудь способ сделать обновление цены живым?

 page = urllib.request.urlopen("https://www.coindesk.com/price/bitcoin").read()
html = BeautifulSoup(page, "html.parser")
btcClass = html.find(class_="price-large")
btcClass1 = str(f"{btcClass}$")
btcClass2 = btcClass1[54:63]
Label1 = tkinter.Label(text=f"BTCn{btcClass2}", font=("Arial", 25)).pack()

def Update():
    #price update

Update()
 

Ответ №1:

Вы могли бы использовать этот .after() метод.

 def Update(
     ... code that gets prices and updates screen)
     root.after(1000, Update)
 

это будет обновлять ваш экран каждые 1000 мс (1 секунда)

 

Update():
      html = BeautifulSoup(page, "html.parser")
      btcClass = html.find(class_="price-large")
      btcClass1 = str(f"{btcClass}$")
      btcClass2 = btcClass1[54:63]
      label.config(text=f"BTCn{btcClass2}"
      root.after(1000, Update)