Gibt es eine generische Python-Bibliothek, um REST-basierte Dienste zu nutzen? [geschlossen]

72

OK. Ich möchte REST-basierte Dienste nutzen.

Ich möchte Python verwenden. In der Tat werde ich Python verwenden.

Ich möchte es über die Befehlszeile / ipython verwenden, um verschiedene REST-Services auszuprobieren, um es später formal zu codieren. (Meine Nutzung des REST-Dienstes ist nicht die generische API-Sache)

Ich suche nach einem ziemlich generischen, voll funktionsfähigen REST-Client / API in Python. Nicht nackte Knochen, sondern Plüsch, schön zu bedienen. Es gibt Unmengen von ihnen da draußen, aber ich würde mich gerne für eine entscheiden und sie meistern.

Irgendwelche Vorschläge?

EDIT: Dies ist eine:

https://github.com/benoitc/restkit

BEARBEITEN: http://pypi.python.org/pypi/requests ist genau das Richtige.

EDIT: http://pypi.python.org/pypi/siesta ist genauso perfekt!

kichernd
quelle
15
Ich bin traurig zu sehen, dass Ihre Frage auf diese Weise geschlossen wurde, da ich denke, dass es nützlich ist. Ich stelle auch fest, dass Sie es selbst viel besser beantwortet haben als die "akzeptierte" Antwort.
Anentropic
Vielen Dank für diese Frage und Ihre eigenen Antworten. Hat mir bei der Suche nach guten Python REST-Clients sehr geholfen.
Bit-Pirat
Slumber ist eine wirklich gute REST-Client-Bibliothek: slumber.in
onlynone
Vielleicht sollte diese Frage, möglicherweise mit Antworten, in Softwareempfehlungen verschoben werden, wo sie zum Thema gehört und live sein könnte.
Steve Barnes
Finch ist ein anderer github.com/jaimegildesagredo/finch
nu everest

Antworten:

16

Das Problem mit einer "plüschigen" REST-Client-Bibliothek ist, dass REST selbst nicht so gut definiert ist. REST an und für sich bedeutet nur, dass Sie nach Möglichkeit HTTP-Standards verwenden möchten, aber ansonsten ist das Feld weit offen.

Sind die Daten mit JSON codiert? Was sind die URL-Schemata und was bedeuten sie?

Da REST im Grunde genommen nur HTTP bedeutet, ist httplib die beste Wahl, aber ich würde es nicht als Plüsch bezeichnen.

Ken Kinder
quelle
4

Ich habe meistens nur urllib2 oder httplib2 verwendet . Ich habe nicht wirklich eine Verwendung für einen Allzweck-REST-Client gefunden.

Casey
quelle
2

So etwas wie eine generische REST-Bibliothek ist kaum möglich, da jede REST-Schnittstelle anders ist. Mit WADL wurde versucht, eine WSDL-ähnliche Schnittstellenbeschreibungssprache für RESTful-Dienste einzurichten. Mit einer solchen Beschreibung wäre ein generischer Client möglich, aber niemand scheint sich für WADL zu interessieren. Und damit scheint jeder einverstanden zu sein.

h0b0
quelle