Blog

Dash mit Apache2 installieren

Veröffentlicht am

Hast du dich jemals gefragt, wie du Dash(Plotly) mit Apache2 installierst? Mit diesem Blog Eintrag möchte ich dich mit auf die Reise nehmen, Apache2 für dash zu konfigurieren. So wie viele andere ist Apache2 ein Webserver, mit dem du deine Seite veröffentlichen kannst und somit auch deine dash-app. Dash ist ein framework um schöne Dashboards in python zu kreieren. Wenn du interessiert bist, was mit dash möglich ist, folge diesen Link. https://dash-gallery.plotly.host/Portal/ Dash selber kommt mit einem kleinen Webserver. Dieser ist jedoch nur für die Entwicklung gedacht. Aufgrund der Sicherheit sollte dieser also nicht für die Veröffentlichung benutzt werden. Der […]

Blog

Projekt: Asset Management Teil2 Django

Veröffentlicht am

Ein kurzer Rückblick zu Teil 1: Das Projekt „Asset Management“ habe ich ins Leben gerufen, damit ich meine Investments zentral gespeichert habe. Dafür verwende ich Metabase. Die Datenbank Struktur ist im vorherigen Bericht zu sehen. Investiert habe ich in mehrere Arten, von P2P bis Aktien. Dabei haben alle ihre eigene Plattform, wo ich die Informationen bekomme. Diese Informationen liegen allerdings nicht zentral an einem Ort. Dies wollte ich mit diesem Projekt ändern. Ich habe das Django Projekt „controlpanel“ genannt und 2 Apps in dem Projekt erstellt. Diese haben den Namen „Metabase“ und „Weather. Das integrierte Admin Interface von Django leistet […]

Blog

Projekt: Asset Management

Veröffentlicht am

Ich habe mich vor längerem dazu entschlossen, ein Teil meines Geldes zu investieren, um daraus später Profite zu erzielen. Dabei habe ich in die unterschiedlichsten Formen wie erneuerbare Energien, Aktien und P2P Netzwerke (z.B. Auxmoney) investiert. Jeder dieser Formen hat zumeist sein eigenes, ich nenne es mal Dashboard, wo der Verlauf begutachtet und der Profit aufgelistet wird. Daraus resultierend habe ich eine Menge Apps/Internetseiten, wo die jeweiligen Informationen liegen. Einige boten mir schon die, von mir verlangten Informationen, einige nicht. Alles in allem wollte ich eine zentrale Stelle. Ich entschloss mich dafür ein Datawarehouse aufzusetzen und bin mit dem OpenSource […]

Blog

multiple Datenbanken mit Django

Veröffentlicht am

Django hat durch sein MVC(Model-View-Controller) von Beginn an eine Datenbank mit am Board. Mein Projekt basiert auf mysql, jedoch hatte ich weitere Datenbanken, die ich über Django managen wollte, die allerdings nicht in der Default DB von Django sind. Daher müssen diese Django bekannt gemacht und Models für diese Datenbanken erstellt werden. Die Bekanntmachung findet in der settings.py statt. Hier trägt man die weiteren DB Verbindungen ein. Dabei könnte es wie folgt aussehen. In dem DATABASE Dictionary können neben dem Default weitere Werte eingetragen werden. Die ENGINE bestimmt dabei, ob mysql, sqlite oder die anderen unterstützen DBs eingetragen werden. Im […]

Blog

openweather

Veröffentlicht am

Ich war auf der Suche nach einen kostenlosen Onlineservice um Wetterdaten via API abzugreifen. Ziel ist es, ein lokales Chart über das Wetter zu bekommen, welches über Jahre auswertbar ist. Mit den erworbenen Wetterdaten möchte ich vor allem die Windgeschwindigkeiten Vorort im Auge behalten. Fündig geworden bin ich bei Openweather. Um den Service und somit die API abzufragen, benötigt ihr ein Key. Dieser muss bei jeder Abfrage angegeben werden. Den Key erhält man bei der Registrierung im Portal. Ihr könnt dort ebenfalls zur kostenpflichtigen Version wechseln. Diese bietet gegenüber der Kostenfreien mehr Funktionen an. Für mich reicht die kostenlose Variante. […]

Blog

Django mit Mysql Datenbank

Veröffentlicht am

Django benötigt für das Model Prinzip eine eigene Datenbank. Standardmäßig hat es die SQLite Datenbank mit am Board , jedoch kann die Datenbank auch auf eine besser skalierbare Datenbank wie PostgreSQL, MySQL oder Oracle laufen. Ich habe mich gegen die SQLite Version und für die MySQL Datenbank entschieden, daher gehe ich in diesem Beitrag auf die MySQL Integrierung ein. SQLite sollte unter keinen Umständen in einer produktiv Umgebung genutzt werden! Um Mysql verwenden zu können, benötigen wir ein DB API Treiber wie mysqlclient. Mysqlclient ist ebenfalls die bevorzugte Wahl von Django. Die dazugehörige Dokumentation von Django kann unter dem Tutorial […]

Blog

Python Datenbank Klasse Update

Veröffentlicht am

In meiner Datenbank Klasse habe ich lange Zeit die Update Funktion missen lassen. Hier gelangt ihr zum alten Artikel. Einfach aus dem Grund weil ich sie vorher noch nicht benötigt habe. Das habe ich hiermit nun nachgezogen(Eigentlich existiert sie schon wesentlich länger, aber ich habe jetzt erst den Artikel verfasst 😉 ). Das Update kann separat aufgerufen werden, macht aber auch Sinn in Zusammenhang mit einem Insert. Falls dort z.B. ein Primärschlüssel schon existiert, kann dieser geupdated werden. Für ein internes Projekt habe ich folgende Befehlszeilen dafür benutzt if not DB.QueryInsert(„insert into AUX_PROJECTS(%s) VALUES(%s)“,{„ID“:PList[i][0],PList[0][1]:PList[i][1],“ZINS“:str(PList[i][2]).replace(„,“,“.“),PList[0][3]:PList[i][3],“ANLAGE“:PList[i][4],“STATUS“:PList[i][5],“SCORE“:PList[i][6],PList[0][7]:PList[i][7],PList[0][8]:PList[i][8],“UNIT“:PList[i][9],“UPLOADED_AT“:PList[i][10]}, True): DB.QueryUpdate(„update AUX_PROJECTS SET %s where […]

Blog

matplotlib über putty ssh

Veröffentlicht am

Ich habe mich vor ein paar Wochen in ein edx Kurse für Data Scientist eingeschrieben und diesen erfolgreich mit einem Zertifikat bestanden. Die zu verwendete Shell hat damals DataCamp bereitgestellt. IPython kam hierbei zum Einsatz. In dem Kurs habe ich erstes Grundwissen über numpy, matplotlib und Pandas erworben. Dieses Wissen wollte ich nun an meinem vServer anwenden. Dafür habe ich zuerst matplotlib für Python3 installiert. apt install python3-matplotlib Zum Testen habe ich das Script von unten(Testbeispiel) benutzt. Führt man das Script direkt aus, sollte folgende Fehlermeldung kommen. /usr/lib/python3/dist-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take […]

Blog

IPs mittels iptables automatisch blockieren lassen

Veröffentlicht am

Eigentlich wollte ich meinen vServer noch sicherer machen, indem ich von Seiten wie myip.ms eine vorgefertigte Blackliste herunterlade. Die gezogenen IPs sollten mittels iptables blockiert werden. Ich hatte auch schon soweit alles fertig geschrieben, ein Python3 Script, ein Shell Script und die SQL Scripte zum Anlegen der Datenbank. Allerdings habe ich nach ein „paar“ Einträgen folgende Nachricht von iptables bekommen: iptables: Memory allocation problem. Nach ein bisschen Internet Recherche fand ich heraus, dass mich mein Hoster auf eine bestimmte Anzahl an iptable Einträgen begrenzt. Die maximal Möglichen Einträge findet ihr mit diesem Befehl. egrep „failcnt|numiptent“ /proc/user_beancounters numiptent steht dabei für […]

Blog

Gesichtserkennung in Python Part II

Veröffentlicht am

Im ersten Gesichtserkennung Tutorial habe ich an einem existierenden Beispiel gezeigt, wie diese einzurichten ist. Ich habe das Script nun um folgende Funktionen erweitert. Die erste Erweiterung ermöglicht das Erkennen von mehreren Personen. Die Zweite begrüßt erkannte Personen mit einer persönlichen Sprachnachricht. Für diese Erweiterung habe ich die Dateistruktur leicht verändert:   im Ordner faces liegen Bilder von bekannten Personen. Die gleichnamige Sprachdatei liegt dabei unter welcomemessage. Der Code selber liegt im Root Ordner face_recognition. Schaut man sich die Unterschiede zwischen dem Code in Part I und Part II an, so bemerkt man, dass es nur kleine Änderungen sind. Ich […]