Neueste
Meistgesehen
- PyInstaller und Cython verwenden, um eine ausführbare Python-Datei zu erstellen
- Verwendung von Pythons pyOpenSSL zur Überprüfung von SSL-Zertifikaten, die von einem Host heruntergeladen wurden
- Verkürzung der Seitenreaktionszeiten einer Flask SQLAlchemy Website
- Verbindung zu einem Dienst auf einem Docker -Host von einem Docker -Container aus
- Verwendung von UUIDs anstelle von Integer Autoincrement Primary Keys mit SQLAlchemy und MariaDb
- SQLAlchemy: Verwendung von Cascade Deletes zum Löschen verwandter Objekte
Tags
AiohttpAJAXAlembicAlpineAPIApplication settingsAsyncBabelBeautifulSoupBootstrapCachingCaptchaCeleryColorsCompileCronCryptographyCSRF protectionCythonDatabaseDecoratorDeep LearningDeepLDispatcherMiddleWareDistributionDNSDockerDocker SwarmDocker-composeEmailExceptionsFastAPIFlaskGunicornIconsIMAPInternetISPConfigJavascriptJinja2KubernetesLog fileLoggingMachine LearningMariaDBMessage brokerMultilanguageMultiprocessingPentestingPikaPostfixPostgreSQLProfilingPyInstallerpyOpenSSLPytestRabbitMQRedisrqliteSchedulingScrapingSecuritySecurity testingSeleniumSlackSQLAlchemyTestingThreadsTimezoneToastsUbuntu TouchUUIDWeb automationWerkzeugWheelsWTFormsYouTubeEinfache Videogalerie mit Flask, Jinja, Bootstrap und JQuery
28 Oktober 2024 0
Peter
Wir haben eine Reihe von Kameras, die kurze Clips erzeugen, wenn sich etwas vor der Kamera bewegt. Alle Clips, Videos, landen auf einem System. Wir verwenden Standardprogramme zur Anzeige der Videos. Nun möchten wir diese Videos aber mit anderen in unserem lokalen Netzwerk teilen, und wir möchten die Videodateien nicht kopieren. Eine offensichtliche Lösung wäre die Auswahl und Installation eines Videogalerie-Servers ...
Grundlegende Auftragsplanung mit APScheduler
19 Oktober 2024 0
Peter
Sie haben ein Python Programm erstellt, zum Beispiel, um eine Datenbank zu sichern, und wollen es nun jede Stunde oder jeden Tag laufen lassen. Es gibt viele Lösungen zur Auswahl, hier verwenden wir APScheduler, 'Advanced Python Scheduler', einen Job Scheduler, der viele Anforderungen erfüllt. Für unsere Aufgabe mag dieses Paket übertrieben erscheinen, aber wir wollen es hier verwenden, und sobald ...
Ein Datenbankschalter mit HAProxy und der HAProxy Runtime API
13 August 2024 0
Peter
Eines meiner Projekte benötigte eine Hochverfügbarkeitsdatenbank (wollen wir das nicht alle?), d.h. (asynchrone) Replikation und ein Multi-Node-Setup. Es gibt mehrere Lösungen, über die ich in einem anderen Beitrag schreiben werde. In diesen Szenarien haben wir mehrere Replikate der Hauptdatenbank, und wenn ein Problem auftritt, wechseln wir von einer Datenbank zur anderen. Um dieses Umschalten der ...
Docker Swarm rolling updates
7 Juli 2024 0
Peter
Vor einiger Zeit schrieb ich, dass es am besten wäre, auf eine Kubernetes -Variante umzusteigen, und jetzt geht es in diesem Beitrag um Docker Swarm. Ja, ich verwende immer noch Docker Swarm , weil ich ein Projekt habe, das es verwendet. Vor kurzem habe ich die Entwicklung von Docker auf Docker Swarm verlagert, hauptsächlich weil man mit Docker Swarm die Grundlagen der Container-Orchestrierung ...
Ausblenden der Primärschlüssel der Datenbank UUID Ihrer Webanwendung
29 März 2024 0
Peter
Wenn Sie eine Webanwendung erstellen, müssen Sie sehr darauf achten, nicht zu viele Informationen preiszugeben. Wenn Sie in Ihrer Datenbank Integer IDs (auto-increment) verwenden, dann geben Sie wahrscheinlich schon zu viel preis. Einige Beispiele. Eine Integer user_id macht es einfach zu erraten, wie viele neue Registrierungen Sie täglich erhalten. Ein Integer order_id macht es leicht ...
Don't Repeat Yourself (DRY) mit Jinja2
20 Februar 2024 0
Peter
Ich habe einige Dinge mit Jinja2 ausprobiert, eine kleine Flask -App erstellt und dachte, warum nicht teilen. Was ich erreichen wollte, war, alle Seitennamen in eine Vorlagendatei zu packen. Wie bei Python muss man auch bei Jinja2 aufpassen, dass man sich beim Schreiben von viel Code nicht wiederholt. Bevor Sie es merken, haben Sie viele Vorlagendateien, die die gleichen Informationen enthalten. ...
SQLAlchemy, PostgreSQL, maximale Anzahl von Zeilen pro user
5 Februar 2024 0
Peter
Sie haben eine Multi-user -Anwendung mit SQLAlchemy und PostgreSQL und möchten die Anzahl der Zeilen pro user einer bestimmten Tabelle begrenzen. Zum Beispiel kann jede user maximal fünf Einträge haben. Sie benötigen eine Operation wie: Sperren Sie die Tabelle Zählen Sie die Anzahl der Beiträge der user Wenn die Anzahl kleiner als fünf ist: Neuen Beitrag ...
Anzeige der Werte in den dynamischen Filtern SQLAlchemy
18 Januar 2024 0
Peter
Bei der Verwendung von SQLAlchemy verwende ich oft dynamische Filter in meinen Abfragen. Das heißt, ich beginne mit einer Liste mit einigen Bedingungen und füge weitere Bedingungen hinzu, die von anderen Variablen abhängen.Hier ist eine Abfrage mit einem statischen Filter: # query with static filter product_colors = ['white'] stmt = sa.select(Product).\ where(sa.and( Product.category.in_(my_cate ...
Sichere Datenübertragung mit Public Key Verschlüsselung und pyNaCl
2 Dezember 2023 0
Peter
Dies ist ein kurzer Beitrag über die sichere Übertragung von Daten zwischen zwei Personen. Dazu verwenden wir das Paket Python pyNaCl , um private und öffentliche Schlüssel zu erzeugen und die Daten zu ver- und entschlüsseln. Ich habe auch das Paket Python keyring hinzugefügt, um die Pakete private_key und public_key zu speichern. Das ist nicht wirklich schwierig. Ich ...
rqlite: eine hochverfügbare und distverteilte SQLite -Alternative
17 Oktober 2023 1
Peter
In einem Projekt verwende ich eine SQLite -Datenbank. Die Daten sind nicht kritisch, sie können jederzeit neu geladen werden. Dennoch möchte ich nicht, dass ein Teil der Anwendung nicht mehr reagiert, wenn die SQLite -Datenbank vorübergehend nicht verfügbar ist. Ich war auf der Suche nach einer schnellen, mehr oder weniger fehlertoleranten Datenbank, und auch distributed, so dass ich einige Lesermodule ...
Sollte ich meinen Docker Swarm auf Kubernetes migrieren?
15 September 2023 0
Peter
Wenn man im Internet liest, dass Docker Swarm tot ist, bekommt man Angst. Ich habe einen Docker Swarm laufen und ich mag ihn, es ist einfach, wenn man bereits Docker benutzt. Was sind die Alternativen? Wir haben die ganze Zeit gelesen, dass es nur eine Möglichkeit gibt, und zwar auf Kubernetes zu migrieren und alles andere zu vergessen. Ich war auf halbem Wege, von Docker auf Docker Swarm ...
Eine Liste von YouTube Videos einer Person erhalten
7 September 2023 0
Peter
Vor ein paar Tagen bekam ich die Frage: Kann man alle öffentlichen YouTube Videos einer Person herunterladen, die zwischen 2020 und heute hochgeladen wurden. Die Gesamtzahl der Videos belief sich auf etwa zweihundert. Und nein, ich konnte keinen Zugriff auf das YouTube -Konto dieser Person erhalten. In diesem Beitrag verwende ich YouTube API , um die erforderlichen Metadaten aus den Videos herunterzuladen, ...
Vom Docker-Composer zu Docker Swarm: Configs
29 August 2023 0
Peter
Sie haben eine Anwendung, die aus einer Reihe von Docker-Compose-Projekten besteht, und verwenden Docker-Compose zum Erstellen, Starten und Bereitstellen. Nun möchten Sie einen Schritt weiter gehen und einige der Docker-Compose Projekte auf einen anderen Server verschieben. Die naheliegendste Möglichkeit, dies zu tun, ist Docker Swarm. Sie lernen ein paar weitere Docker -Befehle und schon ...
Docker - Zusammenstellen von Projekten mit identischen Dienstnamen
25 August 2023 0
Peter
Wenn wir identische Docker-Compose Projekte mit identischen Servicenamen haben, die durch ein Docker Netzwerk verbunden sind, müssen wir sicherstellen, dass wir auf den richtigen Service zugreifen. In einem Docker -Netzwerk gibt es zwei Möglichkeiten für den Zugriff auf einen Dienst: Über den Dienstnamen Über den Containernamen Ich habe mehrere Docker-Compose Projekte, die fast identisch ...
X Webautomatisierung und Scraping mit Selenium
11 August 2023 0
Peter
Wenn Sie Daten aus dem Web auslesen wollen, müssen Sie wissen, was Sie tun. Sie wollen einen Zielserver nicht mit Anfragen überlasten. Wenn Sie dies von einem einzigen Standort aus tun, einem IP address, könnten Sie eine (vorübergehende) Sperre erhalten. Wenn Sie im großen Stil scrapen wollen, sollten Sie einen speziellen Dienst wie ZenRows, ScrapFly, WebScrapingAPI, ScrapingAnt ...
Aiohttp mit benutzerdefinierten DNS-Servern, Unbound und Docker
13 Juli 2023 0
Peter
Die Verwendung von aiohttp sieht so einfach aus, ist es aber nicht. Es ist verwirrend. Die 'Client Quickstart'-Dokumentation beginnt mit dem Folgenden: Hinweis Legen Sie nicht für jede Anfrage eine Sitzung an. Höchstwahrscheinlich benötigen Sie eine Sitzung pro Anwendung, die alle Anfragen zusammen ausführt. Komplexere Fälle können eine Session pro Site erfordern, z.B. eine für Github und ...
Nur die Werte einer Liste von Datensätzen aus FastAPI zurückgeben
6 Juli 2023 0
Peter
In Python ist alles eine Klasse, was bedeutet, dass die Modelldaten einem Wörterbuch ähnlich sind. Aber Wörterbücher haben Schlüssel. Und wenn Sie eine Liste mit vielen Wörterbüchern aus FastAPI zurückgeben, ist die Größe der Daten, Schlüssel und Werte, in der Regel viel mehr als doppelt so groß wie die der Werte. Größere Daten und mehr Zeit bedeuten, dass unsere Anwendung nicht sehr effizient ist ...
Verhinderung von IP address -Spoofing mit Reverse Path Filtering
15 Juni 2023 0
Peter
Dieser Beitrag handelt von der Systemverwaltung und hat nichts mit Python zu tun. Warum posten Sie ihn dann hier? Weil ich glaube, dass es viele wie mich gibt, die einen oder mehrere Webserver betreiben und irgendwann auf diese Probleme stoßen. Im vorigen Beitrag habe ich geschrieben, dass mein ISPConfig Debian -Server einem Port-Scanning unterzogen wurde usw. und dass anscheinend 95% aller Anfragen ...
IP addresses mit ipset und Python sammeln und sperren
21 Mai 2023 0
Peter
Wenn Sie einen Server haben, der mit dem Internet verbunden ist, haben Sie dies wahrscheinlich in Ihren Protokolldateien gesehen: viele illegale externe Anfragen, die versuchen, auf Ihre Dienste zuzugreifen. Ich betreibe einen Debian -Server und verwende Fail2Ban zur Intrusion Prevention. Standardverfahren, installieren, konfigurieren und vergessen. Da der Server zu bestimmten Zeiten heruntergefahren ...
Abbrechen von Aufgaben mit Python Asynchronous IO (AsyncIO)
2 Mai 2023 0
Peter
Für ein Projekt habe ich AIOHTTP verwendet, um die Antworten vieler entfernter Websites, URLs, zu überprüfen. Die URLs stammten aus einer Liste. Diese Liste kann Duplikate enthalten. Alles war in Ordnung, bis ich bemerkte, dass einige Antworten auch einen Statuscode hatten: HTTP-429 'Zu viele Anfragen'. Was auch immer der Grund sein mag, Überlastung, Sicherheit, wir wollen uns freundlich verhalten ...