Как установить изображение на фон в Kivy(Python) до того, как загрузится контент?
Я пишу приложение-погоду на Kivy в котором при запуске происходит парсинг сайта погоды и метке Label устанавливается значение температуры. Так же при запуске, до того как начинается парсинг, я устанавливаю изображение на фон всего экрана. Но, когда я запускаю приложение, изображения нет, оно загружается только после того, как отработает парсинг. Как мне сделать установку изображения до того, как начинается парсинг?
from kivy.app import App
from kivy.uix.relativelayout import RelativeLayout
from kivy.graphics import Rectangle
from kivy.core.window import Window
from kivy.uix.label import Label
from kivy.lang import Builder
import requests
from bs4 import BeautifulSoup
from time import sleep
Builder.load_file('my.kv')
class MainWidget(RelativeLayout):
intWeather = 0
def __init__(self, ** kwargs):
super(MainWidget,
self).__init__( ** kwargs)
with self.canvas.before:
Rectangle(source='winter.jpg', pos=self.pos, size=Window.size)
strWeather = self.set_weather()
self.ids['weather'].text = strWeather+" °C"
self.intWeather = int(strWeather)
def set_weather(self):
url = 'https://pogoda33.ru/%D0%BF%D0%BE%D0%B3%D0%BE%D0%B4%D0%B0-%D1%83%D1%81%D1%82%D1%8C-%D1%82%D1%8B%D0%BC/14-%D0%B4%D0%BD%D0%B5%D0%B9'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html5lib')
weather = soup.find_all('div', class_='forecast-weather-temperature')
return weather[0].text[0:3]
class myApp(App):
def build(self):
# return a MainWidget() as a root widget
return MainWidget()
if __name__ == '__main__':
# Here the class MyApp is initialized
# and its run() method called.
myApp().run()
my.kv file
<MainWidget>:
Label:
id: weather
font_size:150
pos_hint:{'center_x':.5, 'center_y':.8}