EDIT:
Übersehen dass du urllib verwendest:
Code: Alles auswählen
with urllib.request.urlopen(URL + "/Versionen/latest.vers") as response:
prices = request.read().decode(request.headers.get_content_charset() or "ASCII")
Code: Alles auswählen
with urllib.request.urlopen(URL + "/Versionen/latest.vers") as response:
prices = request.read().decode(request.headers.get_content_charset() or "ASCII")
erwas verstehe ich noch nicht daran
Code: Alles auswählen
zip()
Code: Alles auswählen
[INFO ] [Logger ] Record log in C:\Users\MupfSpace\.kivy\logs\kivy_19-01-28_14.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 22.20.16.4771'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 22.20.16.4771'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: sdl2
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\listview.py line 845.Called from C:\Python37\lib\site-packages\kivy\lang\builder.py line 582 by _apply_rule().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 49.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 859 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 55 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\abstractview.py line 42.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 865 by __init__().
[INFO ] [GL ] NPOT texture support is available
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\listadapter.py line 185.Called from <string> line 433 by <module>().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\listadapter.py line 186 by __init__().
Traceback (most recent call last):
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\ptvsd_launcher.py", line 45, in <module>
main(ptvsdArgs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 265, in main
wait=args.wait)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 256, in handle_args
run_main(addr, name, kind, *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_local.py", line 52, in run_main
runner(addr, name, kind == 'module', *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\runner.py", line 32, in run
set_trace=False)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1283, in run
return self._exec(is_module, entry_point_fn, module_name, file, globals, locals)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1290, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\_pydev_imps\_pydev_execfile.py", line 25, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 784, in <module>
main()
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 781, in main
app.run()
File "C:\Python37\lib\site-packages\kivy\app.py", line 825, in run
self.dispatch('on_start')
File "kivy\_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 744, in on_start
ids.sorte5, ids.preis5,
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 729, in update_prices
for label, price in zip(label, prices.split(';')):
UnboundLocalError: local variable 'label' referenced before assignment
Code: Alles auswählen
for label, price in zip(labels, prices.split(';')):
Code: Alles auswählen
[INFO ] [Logger ] Record log in C:\Users\MupfSpace\.kivy\logs\kivy_19-01-28_19.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 22.20.16.4771'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 22.20.16.4771'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: sdl2
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\listview.py line 845.Called from C:\Python37\lib\site-packages\kivy\lang\builder.py line 582 by _apply_rule().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 49.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 859 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 55 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\abstractview.py line 42.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 865 by __init__().
[INFO ] [GL ] NPOT texture support is available
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\listadapter.py line 185.Called from <string> line 433 by <module>().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\listadapter.py line 186 by __init__().
[INFO ] [Base ] Start application main loop
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\selectableview.py line 38.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 593 by __init__().
[INFO ] [Base ] Leaving application in progress...
Traceback (most recent call last):
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\ptvsd_launcher.py", line 45, in <module>
main(ptvsdArgs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 265, in main
wait=args.wait)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 256, in handle_args
run_main(addr, name, kind, *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_local.py", line 52, in run_main
runner(addr, name, kind == 'module', *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\runner.py", line 32, in run
set_trace=False)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1283, in run
return self._exec(is_module, entry_point_fn, module_name, file, globals, locals)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1290, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\_pydev_imps\_pydev_execfile.py", line 25, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 784, in <module>
main()
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 781, in main
app.run()
File "C:\Python37\lib\site-packages\kivy\app.py", line 826, in run
runTouchApp()
File "C:\Python37\lib\site-packages\kivy\base.py", line 502, in runTouchApp
EventLoop.window.mainloop()
File "C:\Python37\lib\site-packages\kivy\core\window\window_sdl2.py", line 727, in mainloop
self._mainloop()
File "C:\Python37\lib\site-packages\kivy\core\window\window_sdl2.py", line 460, in _mainloop
EventLoop.idle()
File "C:\Python37\lib\site-packages\kivy\base.py", line 337, in idle
Clock.tick()
File "C:\Python37\lib\site-packages\kivy\clock.py", line 581, in tick
self._process_events()
File "kivy\_clock.pyx", line 384, in kivy._clock.CyClockBase._process_events
File "kivy\_clock.pyx", line 414, in kivy._clock.CyClockBase._process_events
File "kivy\_clock.pyx", line 412, in kivy._clock.CyClockBase._process_events
File "kivy\_clock.pyx", line 167, in kivy._clock.ClockEvent.tick
TypeError: on_start() takes 1 positional argument but 2 were given
Code: Alles auswählen
Clock.schedule_interval(app.on_start, 30)
Code: Alles auswählen
def on_start(self, dt)
Code: Alles auswählen
Purge log fired. Analysing...
Purge 33 log files
Purge finished!
[INFO ] [Logger ] Record log in C:\Users\MupfSpace\.kivy\logs\kivy_19-01-28_25.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 22.20.16.4771'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 22.20.16.4771'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: sdl2
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\listview.py line 845.Called from C:\Python37\lib\site-packages\kivy\lang\builder.py line 582 by _apply_rule().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 49.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 859 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\simplelistadapter.py line 55 by __init__().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\uix\abstractview.py line 42.Called from C:\Python37\lib\site-packages\kivy\uix\listview.py line 865 by __init__().
[INFO ] [GL ] NPOT texture support is available
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\listadapter.py line 185.Called from <string> line 433 by <module>().
[WARNING] [Call to deprecated function __init__ in C]\Python37\lib\site-packages\kivy\adapters\adapter.py line 111.Called from C:\Python37\lib\site-packages\kivy\adapters\listadapter.py line 186 by __init__().
Traceback (most recent call last):
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\ptvsd_launcher.py", line 45, in <module>
main(ptvsdArgs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 265, in main
wait=args.wait)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\__main__.py", line 256, in handle_args
run_main(addr, name, kind, *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_local.py", line 52, in run_main
runner(addr, name, kind == 'module', *extra, **kwargs)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\runner.py", line 32, in run
set_trace=False)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1283, in run
return self._exec(is_module, entry_point_fn, module_name, file, globals, locals)
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\pydevd.py", line 1290, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "c:\Users\MupfSpace\.vscode\extensions\ms-python.python-2018.12.1\pythonFiles\lib\python\ptvsd\_vendored\pydevd\_pydev_imps\_pydev_execfile.py", line 25, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 784, in <module>
main()
File "c:\Users\MupfSpace\Desktop\App test1\mainpy3v6.0.py", line 781, in main
app.run()
File "C:\Python37\lib\site-packages\kivy\app.py", line 825, in run
self.dispatch('on_start')
File "kivy\_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
TypeError: on_start() missing 1 required positional argument: 'dt'
Code: Alles auswählen
class TankstellenApp(App):
def __init__(self):
super().__init__()
self.blink = True
self.update = False
def cheap_not_switched(self, instance, value):
if value:
notification.notify(message="Du erhälst ab jetzt Benachrichtigungem bei günstigem Preis!\n"
"Du kannst in den Einstellungen die Preise verändern bei denen du Benachrichtigugen erhalten willst!")
with open(os.path.join(APP_PATH, "CheapNotify.val", "w")) as output:
output.write(str(value))
@staticmethod
def download_files():
if not os.path.exists(APP_PATH):
with urllib.request.urlopen(URL + "/Appfiles/files.zip") as response:
data = BytesIO(response.read())
with ZipFile(data) as files:
files.extractall(STORAGE)
def check_version(self):
with urllib.request.urlopen(URL + "/Versionen/latest.vers") as response:
version = response.read().decode(response.headers.get_content_charset() or "ASCII")
with open(os.path.join(APP_PATH, "vers")) as data:
current_version = data.read()
self.update = version != current_version
def update_prices(self, url, labels):
with urllib.request.urlopen(URL + url) as response:
prices = response.read().decode(response.headers.get_content_charset() or "ASCII")
for label, price in zip(labels, prices.split(';')):
label.text = price
def on_start(self, dt):
self.root.ids.refBUT.background_color=(0,0,0,0) if self.blink else (0,0,9,9)
self.blink = not self.blink
self.download_files()
self.check_version()
self.root.ids.UpdInf.pos_hint = {'bottom' if self.update else 'top': 1}
ids = self.root.ids
self.update_prices("/PreisErmitlung/OMVNBB.pri", [
ids.sorte1, ids.preis1,
ids.sorte2, ids.preis2,
ids.sorte3, ids.preis3,
ids.sorte4, ids.preis4,
ids.sorte5, ids.preis5,
])
self.update_prices("/PreisErmitlung/DRIVERSINPB.pri", [
ids.sorte1DVP, ids.preis1DVP,
ids.sorte2DVP, ids.preis2DVP,
ids.sorte3DVP, ids.preis3DVP,
ids.sorte4DVP, ids.preis4DVP,
ids.sorte5DVP, ids.preis5DVP,
])
self.update_prices("/PreisErmitlung/SHELLKGB.pri", [
ids.sorte1KGS, ids.preis1KGS,
ids.sorte2KGS, ids.preis2KGS,
ids.sorte3KGS, ids.preis3KGS,
ids.sorte4KGS, ids.preis4KGS,
ids.sorte5KGS, ids.preis5KGS,
ids.sorte6KGS, ids.preis6KGS,
])
def updateinfo_gone(self, ActionPrevious):
self.root.ids.UpdInf.pos_hint={'top':1}
def version_selected(self, ListItemButton):
print("^")
def build(self):
self.settings_cls = SettingsWithSidebar
self.use_kivy_settings= False
return g
def build_config(self, config):
self.config.setdefaults('settings',{"AutoUpdate": True})
def build_settings(self,settings):
settings.add_json_panel('Einstellungen', self.config, data=setting_json)
def main():
app = TankstellenApp()
Clock.schedule_interval(app.on_start, 30)
app.run()
if __name__ == '__main__':
main()
Code: Alles auswählen
Clock.schedule_interval(app.update_all, 30)
Code: Alles auswählen
Clock.schedule_interval(callback, time)