im nachfolgenden (lauffähigen) Quelltext möchte ich auf einen geschützten Bereich zugreifen. Nach einem erfolgreichen Login möchte ich eine Textdatei auslesen. Das funktioniert auch alles wunderbar. Nur möchte ich an dieser Stelle Präventionsmaßnahme ergreifen. Es kann ja mal passieren, dass eine Datei "wächst". Ich möchte also nicht den Arbeitsspeicher unnätig vollstopfen. Mein derzeitiger Quelltext liest den gesamten Inhalt der Textdatei aus, und speichert den kompletten Inhalt in den Speicher. Irgendwie bin ich damit nicht ganz zufrieden.
Eine andere Möglichkeit wäre ja, die Datei herunterzuladen, sie irgendwo auf der Festplatte zu speichern, und dann zum Beispiel mit einem Generator auslesen. Allerdings erscheint mit dieser Weg wie ein Umweg.
Habt ihr eine bessere Idee?
Code: Alles auswählen
from requests.auth import HTTPBasicAuth
import requests
def login_digest(url, login_name, login_pwd):
res = requests.get(url, auth=HTTPDigestAuth(login_name, login_pwd))
return res
if __name__ == "__main__":
# my example link: http://www.sophus.bplaced.net/test/xar.txt
# For testing: username: xar
# password 456123
while True:
url = unicode(raw_input("Enter URL: "))
login_name = unicode(raw_input("Enter your nickname: "))
login_pwd = unicode(raw_input("Enter your password: "))
result = log_in(url, login_name, login_pwd)
if result.ok:
res = result.content
print res
break
else:
print "Your login is not validated"