meine ersten Gehversuche in Python
Find a file
2022-01-03 19:22:44 +01:00
.idea Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
cameras/wz/2020/02/29 Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
media/23 Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
mpg Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
Stick Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
testa Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
venv/lib/python3.9/site-packages Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Ziel Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
2019_12_23_20_21_16data.txt Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
2019_12_23_20_22_35_data.txt Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
2019_12_23_20_22_46_data.txt Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
2019_12_24_08_49_41_data.txt Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
Alzey-Mz.py Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
Bahnabfrage.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
Bild Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
Bild19_38_05.jpg Ausgabe der neuen DB Einträge 2022-01-03 19:03:41 +01:00
Checkmail.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
chuck.rtf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Chuck2SQL.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Dashbutton.py aktueller Stand 2019-02-12 20:19:52 +01:00
data.txt Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
data.txt2019_12_23_20_19_33 Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
Datumszeug.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Dienstag.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Dropboxsync.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Euro2SQL.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
export_job_logResponse.xml Bsp.Datei 2017-08-25 11:42:16 +02:00
Faxreport.py Versuch, eine xml zu parsen 2017-08-25 11:43:04 +02:00
Ferien.py Prints wurden entfernt, Korrektur der Endzeitberechnung, Booleans angelegt 2017-10-10 11:07:02 +02:00
FilosophieTOsql.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
FilosophieTOsql_Test.py Ausgabe der neuen DB Einträge 2019-11-25 20:28:26 +01:00
Frank.py aktueller Stand 2019-02-12 20:19:52 +01:00
geckodriver.log Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
getMailatta 2.py aktueller Stand 2019-02-12 20:19:52 +01:00
getMailatta.py aktueller Stand 2019-02-12 20:19:52 +01:00
ghostdriver.log Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
gmail 2.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
gmail.py frägt das Gmailkonto nach ungelesenen Mails ab 2017-05-28 11:37:19 +02:00
Gui_Hubobel.py Formatierungen im Code vorgenommen 2017-06-29 19:58:22 +02:00
heute.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
heute1.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Hue.py Ausgabe der neuen DB Einträge 2019-11-25 20:28:26 +01:00
IFTT.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Influx.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
json_feiertage.data alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
json_ferien.data alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
kino_wrapper.py aktueller Stand 2019-02-12 20:19:52 +01:00
Kodi_Class 2.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Kodi_Class.py Methode "Kodiitem" modifiziert 2.0 2017-07-29 16:31:26 +02:00
kodi_db.py aktueller Stand 2019-02-12 20:19:52 +01:00
leer.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Liste.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Lotto2SQL.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Lotto2SQL_V2.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
lotto24.py aktueller Stand 2019-02-12 20:19:52 +01:00
Mail.py es werden nur noch Mails verschickt, welche das geänderte aktuelle pdf beinhalten 2017-10-10 13:17:21 +02:00
main.py nächster Step 2017-05-30 11:24:31 +02:00
Montag.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
morgen.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
morgen1.pdf alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
mpgScanner.py aktueller Stand 2019-02-12 20:19:52 +01:00
Mz-Alzey.py Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
Mz-Wi.py Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
newsblur.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
newsblur_api.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
OrdnerCLEAN.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Parser.py a liitle bit of PEP8 2017-07-06 15:19:43 +02:00
pass 2.json alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
pass.json aktueller Stand 2019-02-12 20:19:52 +01:00
pass1.json aktueller Stand 2019-02-12 20:22:03 +01:00
Pulsecounter.py aktueller Stand 2019-02-12 20:19:52 +01:00
README 2.md alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
README.md alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Reolink.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Rest_API.bak alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
REST_API.log alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
REST_API.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
REST_APIv2.py Ausgabe der neuen DB Einträge 2019-11-25 20:28:26 +01:00
screenshot.png Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Screenshot.py aktueller Stand 2019-02-12 20:22:03 +01:00
Screenshot2.py aktueller Stand 2019-02-12 20:22:03 +01:00
send_Mail.py BugFixing 2017-10-10 20:06:26 +02:00
Snapshot.py aktueller Stand 2019-02-12 20:19:52 +01:00
Sound_lib.py Methode "Kodiitem" modifiziert 2.0 2017-07-29 16:31:26 +02:00
Soundtouch 2.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Soundtouch.py XML von Soundtouchgeräten auslesen und durchsuchen 2017-07-10 19:37:21 +02:00
Speedtest.py Ausgabe der neuen DB Einträge 2022-01-03 18:58:49 +01:00
SQL.py Ausgabe der neuen DB Einträge 2022-01-03 19:22:44 +01:00
telegram.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
test.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
Test4_Pfad.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
test_2.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
test_dictionary.py läuft in Schleife und pusht SV 2017-06-03 19:17:41 +02:00
testerrrr.py Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
Timelapse.py Eurojackpot korrigiert und auf lotto24.de umgestellt 2020-05-23 14:39:49 +02:00
toFind.txt alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
tv_wrapper.py aktueller Stand 2019-02-12 20:19:52 +01:00
txt2json.py alles,was sich so angesammelt hat 2017-12-01 18:51:46 +01:00
Unifi.py Ausgabe der neuen DB Einträge 2019-11-25 20:28:26 +01:00
USB.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Verbrauchsdaten.png Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Verbrauchsdaten2.png Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Wetterscreenshot.png Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Wetterscreenshot2.png Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
WetterShot.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00
Wi-Mz.py Ausgabe der neuen DB Einträge 2019-11-25 20:30:40 +01:00
Zeit.py Ausgabe der neuen DB Einträge 2022-01-02 21:50:48 +01:00

mpgScanner

holt die Vertretungspläne vom Schulserver und verschickt diese, sollten Aktualisierungen vorliegen, dann per Mail und/oder Telegram-Messenger an beliebige viele Empfänger (via Blindcopy, BCC),in Abhänigkeit davon, ob gerade Ferien oder ein Feiertag sind. Für Nutzer der Hausautomation "Homematic": Es wird eine Systemvariable "Ferien" automatisch auf "True" bzw "False" gesetzt, wenn man dies möchte. Zusätzlich werden einmal pro Tag ein "Zitat des Tages" angegeben. Beim Versand der PDF werden die jeweils aktuelle Temperatur,Luftfeuchte und der Wolkenstatus mitangegeben. Ein zufällig ausgewählter "Chuck-Norris-Fact" runden das ganze dann ab.

Installation

Das File downloaden und in einen beliebigen Ordner, in welchem man natürlich Schreibrechte besitzen muss, stecken. Nach dem ersten Start wird automatisch eine Datei pass.json im gleichen Verzeichniss erstellt und die Anwendung beendet sich selbst. Nun müssen folgende Angaben innerhalb dieser 'pass.json' gemacht werden:

  • "gmail_pass":Passwort für den eigenen G-Mail Account (wird zum Versenden der PDF´s benötigt)
  • "gmail_user":eigene Emailadresse des für die versendung zuständigen Accounts
  • "Land":Europäisches Kürzel für den eignen Wohnort (z.Bsp. RP für RheinlandPfalz)
  • "TOKEN":der Usertoken des Telegrammessengers (optional)
  • "Chat_ID":Chat_ID des Telegrammessengers (optional)
  • "ccu_ip":IP der CCU-Zentrale der Hausautomation 'Homematic' (optional)
  • "wetter_API": der API-Key von wunderground.com
  • "wetter_Ort": die ID der verwendeten Wetterstation

Weiterhin muss auf dem ausführenden System die Pythonbiliothek "pyTelegramBotAPI" installiert sein (wenn man Telegram nutzen möchte, sonst wird diese Funktion automatisch deaktiviert:

  • sollte pip noch nicht installiert sein: "sudo apt-get installe python3-pip"
  • pip3 install pyTelegramBotAPI

Bsp. für eine leere pass.json, wie sie automatisch nach dem ersten Start angelegt wird:

{ "Chat_ID": "", "Land": "rp", "TOKEN": "", "ccu_ip": "", "gmail_pass": "", "gmail_user": "", "mpg_pass": "", "mpg_user": "" }

Benutzung

Das Programm wird am besten über einen Cronjob periodisch aufgerufen, z.Bsp. Stündlich, immer zur halben Stunde, im Zeitraum von 7 bis 15 Uhr, an den Werk(Schul-)tagen Montag bis Freitag. Eintrag in der crontab sollte dann in etwa so ausschauen (Pfad zum Script bitte anpassen):

30 7-15 * * 1-5 python3 /home/carsten/Scripts/mpgScanner.py

Disclaimer

Diese Software benutz den Zugang zum Schulserver des Max-Planck-Gymnasiums in Ludwigshafen (http://www.mpglu.de/aktuelles/vertretungsplan.html), um dort die Vertretungspläne für den aktuellen und den darauf folgenden Schultag zu laden. Für die Feier- und Ferientagsdaten wird die API von smartnoob.de (https://robin.meis.space/2014/04/15/ferien-feiertag-api-fuer-deutschland/) benutz. Vielen Dank für die Bereitstellung der Daten. Für das "Zitat des Tages Feature" nutze ich die API von https://taeglicheszit.at Um die aktuelle Temperatur/Luftfeuchtigkeit und "Bedeckung" anzuzeigen, greife ich auf die API von http://www.wunderground.com zurück. Der Chuck-Norris-Fact wird von meiner eigenen API (api.hubobel.de/facts) bereitgestellt.

paypal