trottle http server...

Code-Stücke können hier veröffentlicht werden.
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ich brauche eine Möglichkeit lokal eine langsame Internetverbindung zu simulieren, um das Ladeverhalten von einer WebSeite zu sehen...

Dazu habe ich einen kleinen Python http Server gemacht, der größere Dateien gedrosselt ausliefert: https://gist.github.com/jedie/b6fe12d304428129a379

Es gab mal das Firefox Addon "firefox throttle", aber das gibt es nicht mehr...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

@jens: Gibt es einen Grund wieso man die Latenz nicht einstellen kann? (also per Kommandozeilenparameter!) Ich hätte gedacht, dass das ein wesentliches variables Merkmal für solche Tests ist.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Sirius3
User
Beiträge: 17768
Registriert: Sonntag 21. Oktober 2012, 17:20

@jens: Zeile 48-50: falls es einen Key in einem Dictionary nicht gibt, und statt dessen ein Default-Wert geliefert werden soll, gibt es dafür die get-Methode.

Zeile 53: normpath solltest Du vor dem Zusammensetzen mit BASE_DIR machen

Code: Alles auswählen

>>> os.path.normpath(os.path.join('/www/files', '.' + '/../../../etc/passwd'))
'/etc/passwd'
>>> os.path.join('/www/files', '.' + os.path.normpath('/../../../etc/passwd'))
'/www/files/./etc/passwd'
Zeile 64ff: wenn Du einen Zähler brauchst, kannst Du eine for-Schleife mit itertools.count machen, statt selbst zu zählen.
Antworten