Ich benutze Python seit Jahren, habe aber wenig Erfahrung mit Python-Webprogrammierung. Ich möchte einen sehr einfachen Webdienst erstellen, der einige Funktionen eines vorhandenen Python-Skripts für die Verwendung in meinem Unternehmen verfügbar macht. Es wird wahrscheinlich die Ergebnisse in csv zurückgeben. Was ist der schnellste Weg, um etwas aufzubauen? Wenn es Ihren Vorschlag betrifft, werde ich wahrscheinlich später weitere Funktionen hinzufügen.
python
web-services
Jeremy Cantrell
quelle
quelle
Antworten:
Werfen Sie einen Blick auf werkzeug . Werkzeug begann als einfache Sammlung verschiedener Dienstprogramme für WSGI-Anwendungen und hat sich zu einem der fortschrittlichsten WSGI-Dienstprogrammmodule entwickelt. Es enthält einen leistungsstarken Debugger, voll funktionsfähige Anforderungs- und Antwortobjekte, HTTP-Dienstprogramme zur Verarbeitung von Entitäts-Tags, Cache-Steuerungsheader, HTTP-Daten, Cookie-Behandlung, Datei-Uploads, ein leistungsstarkes URL-Routing-System und eine Reihe von Addon-Modulen, die von der Community bereitgestellt wurden.
Es enthält viele coole Tools für die Arbeit mit http und hat den Vorteil, dass Sie es mit wsgi in verschiedenen Umgebungen (cgi, fcgi, apache / mod_wsgi oder mit einem einfachen Python-Server zum Debuggen) verwenden können.
quelle
web.py ist wahrscheinlich das einfachste Webframework auf dem Markt . "Bare" CGI ist einfacher, aber Sie sind völlig allein, wenn es darum geht, einen Dienst zu erstellen, der tatsächlich etwas bewirkt.
"Hallo Welt!" Laut web.py ist es nicht viel länger als eine reine CGI-Version, aber es fügt URL-Zuordnung, HTTP-Befehlsunterscheidung und kostenlose Analyse von Abfrageparametern hinzu :
quelle
Der einfachste Weg, ein Python-Skript online zu stellen, ist die Verwendung von CGI:
Fügen Sie diesen Code in ein Skript ein, das sich in Ihrem Webserver-CGI-Verzeichnis befindet, machen Sie ihn ausführbar und führen Sie ihn aus. Das
cgi
Modul verfügt über eine Reihe nützlicher Dienstprogramme, wenn Sie Parameter vom Benutzer akzeptieren müssen.quelle
Rohes CGI ist eine Art Schmerz, Django ist eine Art Schwergewicht. Es gibt eine Reihe von einfacheren, leichteren Frameworks, z . B. CherryPy . Es lohnt sich, sich ein bisschen umzuschauen.
quelle
Schauen Sie sich die WSGI-Referenzimplementierung an . Sie haben es bereits in Ihren Python-Bibliotheken. Es ist ganz einfach.
quelle
Wenn Sie mit "Web Service" meinen, ist etwas, auf das andere Programme SimpleXMLRPCServer zugreifen, möglicherweise das Richtige für Sie. Es ist in jeder Python-Installation seit Version 2.2 enthalten.
Für einfache, für Menschen zugängliche Dinge verwende ich normalerweise Pythons SimpleHTTPServer, der auch mit jeder Installation geliefert wird. Natürlich können Sie auch über Client-Programme auf SimpleHTTPServer zugreifen.
quelle
Das Leben ist einfach, wenn Sie ein gutes Web-Framework erhalten. Webdienste in Django sind einfach. Definieren Sie Ihr Modell und schreiben Sie Ansichtsfunktionen, die Ihre CSV-Dokumente zurückgeben. Überspringen Sie die Vorlagen.
quelle
Wenn Sie "Webdienst" im Sinne von SOAP / WSDL meinen, sollten Sie sich das ansehen Generieren einer WSDL mit Python und SOAPpy
quelle
vielleicht verdreht http://twistedmatrix.com/trac/
quelle