Simples3.

Simple, Quick Amazon Aws S3-Schnittstelle
Jetzt downloaden

Simples3. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • GPL
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Ludvig Ericson
  • Website des Verlags:

Simples3. Stichworte


Simples3. Beschreibung

Einfache, schnelle Amazon Aws S3-Schnittstelle Simples3 ist eine ziemlich einfache und anständige Schnellschnittstelle zum S3-S3-Speicherservice von Amazon. Es ist aus Frustration mit anderen Bibliotheken gewachsen, die entweder zu pragmatisch (langsam), zu blasiert, oder nur halb fertig wurden. Das Modul zielt an: * Einfachheit, * Angemessene Geschwindigkeit, * Nicht- nicht- Die drei grundlegenden Vorgänge sind so einfach wie mit Wörterbüchern. Die Vereinfachung der Einfachheit kommt keine Abhängigkeiten - der Code stützt sich ausschließlich auf Python-Standardbibliotheken. Der vielleicht größte Rückschlag ist, dass es Python 2.5 oder Python 2.6 benötigt. Kein Versuch, nach Python 2.4 nach Python 2.4 zu unterstützen, wird jemals gemacht, denn: es ist alt Schlüssel ", ... secret_key =" geheimer Schlüssel ") ... >>> drucken s # docation: + ellipsis oder wenn Sie möchten den virtuellen Host S3 verwenden: >>> s = S3Bucket ("MyBucket", ... access_key = "Zugriffstaste", ... secret_key = "Geheimtschlüssel", ... base_url = "http: / /yo.se ") >>> drucken s # doctest: + ellipsis Beachten Sie, dass fehlender Schrägstrich oben, es ist wichtig. Denken Sie daran als "das Präfix, an das alle Anrufe getroffen werden." Auch das Schema kann HTTPS oder reguläres HTTP sein, oder ein anderes urlliB2-kompatibles Programm (das ist: Sie können Ihre eigenen registrieren.) Nun können wir etwas Nützliches tun. Beginnen Sie mit einer einfachen Datei auf dort: >>> S.PUT ("Meine Datei", "Mein Inhalt") in Ordnung, und holen Sie sich zurück: >>> f = s.get ("meine Datei") >> > F.Read () 'Mein Inhalt'nice und ordentlich, aber was ist, wenn wir mehr über unsere abgerufene Datei erfahren wollen? Easy: >>> F.S3_INFO # Doctest: + ellipsisDateTime.DateTime (...) >>> F.S3_INFO 'Application / X-Octet-Stream' >>> f. S3_info.keys () >>> F.Close () Beachten Sie, dass der Typ Oktettstrom war. Das ist einfach nur weil wir nichts anderes angeben. Machen Sie das mit dem Mimetype-Schlüsselwort Argument: >>> S.Put ("Meine neue Datei!", "Verbesserte Inhalte! Mehrere Zeilen! ", ... MimeType =" Text / Plain ") Lassen Sie uns cool sein und verwenden Sie die sehr pythonische API, um abzuholen: >>> F = S >>> Drucken F.Read () Verbesserte Inhalte! Mehrere Zeilen! >>> F.S3_info 'Text / Plain' >>> F.Close () Tolle Arbeit, huh. Nun, lass es löschen: >>> del s Kann stattdessen die Löschmethode verwendet werden, aber wir haben es nicht nicht. Wenn Sie nur über einen Schlüssel erfahren möchten, fragen Sie und Sie erhalten: >>> von Pprint-Import-PPRint >>> S = S3File (" Hi! ", Metadata = {" Hairdo ":" Secret "}) >>> Pprint (S.Info (" Test ")) # Doctest: + Ellipsis {'Datum' : dateTime.DateTime (...), 'Header': {'Content-Länge': '3', 'Content-Typ': 'Application / X-Octet-Stream', 'Datum': '...' , 'etag': '"..."', 'Letzte-modifiziert': '...', 'Server': 'Amazons3', 'X-Amz-ID-2': '...', ' X-Amz-Meta-Hairdo ':' geheim ',' X-Amz-Request-ID ':' ... '},' metadata ': {' hairdo ':' secret '},' Mimetype ':' Application / X-Octet-Stream ',' modifizieren ': dateTime.datetime (...),' Größe ': 3} Bemerkenswert ist, dass Sie die Metadaten bekommen, die in der E-Metadaten-Schlüssel. Möglicherweise haben Sie auch bemerkt, wie die Datei hochgeladen wurde, wobei ein solches S3File-Objekt verwendet wurde. Das ist eine schönere Methode, um es in gewisser Weise zu tun. Das S3File nimmt einfach seine Keyword-Argumente an und gibt sie weiter, um später einzulegen. Abgesehen davon ist es eine Str-Subklasse. Und das letzte dict-artige Verhalten ist in Tests: >>> "Dies ist ein Testdatei." In Strue >>> Del S >>> "Dies ist ein Testdatei." In SFALSEYOU können Sie auch einen Dosen-ACL mit Put einstellen, der zu einfach ist: >>> S.PUT ("Test / Foo", "Test", ACL = "Public-Read") >>> S.Put ("Test) / bar "," Rawr ", ACL =" Public-Read ") Boom. Was ist mehr? Auflistung des Eimers: >>> für (Schlüssel, Änderung, ETAG, Größe) in S.ListDir (Präfix = "Test /"): ... drucken "% r (% r) ist Größe% r, modifiziert% r" % (Schlüssel, ETAG, Größe, Ändern) ... # Doctest: + ellipsis'test / bar '(' "..." ') ist Größe 4, modifiziert dateTime.DateTime (...)' test / foo ' ('' Anforderungen: · Python Was ist neu in dieser Version: · Fügen Sie S3-to-S3-Kopiermethode hinzu.


Simples3. Zugehörige Software