web-dev-qa-db-ja.com

Python HTTPリクエストに応答する

非常に単純だと思うことをしようとしていますが、Pythonに慣れていないので、方法がわかりません。=で関数を実行する必要があります。 Python URLが呼び出されたときのスクリプト。

たとえば、ブラウザで次のURLにアクセスします(192.168.0.10はスクリプトを実行しているコンピュータのIPであり、8080は選択したポートです)。

http://192.168.0.10:8080/captureImage

このURLにアクセスしたら、Pythonスクリプトでアクションを実行します。この場合は、作成した関数を実行します。

これはかなり簡単かもしれませんが、これをどのように行うことができるかを知ることができませんでした。助けていただければ幸いです!

16
Lazze

これは確かにPythonで行うのは非常に簡単です:

import SocketServer
from BaseHTTPServer import BaseHTTPRequestHandler

def some_function():
    print "some_function got called"

class MyHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == '/captureImage':
            # Insert your code here
            some_function()

        self.send_response(200)

httpd = SocketServer.TCPServer(("", 8080), MyHandler)
httpd.serve_forever()

ここから行きたい場所に応じて、 BaseHttpServer のドキュメントをチェックアウトするか、Djangoのようなよりフル機能のWebフレームワークを調べることをお勧めします。

15
Nathan Jhaveri