GithubHelp home page GithubHelp logo

hubobel / hubobelspython Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 88.83 MB

meine ersten Gehversuche in Python

Python 96.20% Rich Text Format 0.02% C 2.58% Cython 0.45% XSLT 0.55% Roff 0.09% HTML 0.03% Shell 0.01% GAP 0.07%

hubobelspython's Introduction

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

hubobelspython's People

Contributors

hubobel avatar

hubobelspython's Issues

Kodi Item der CCU mitteilen

Das aus dem JSON herausgefilterte Kodiitem muss noch der CCU in Form einer Systemvariable mitgeteilt werden

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.