Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import http.server
- import threading
- import functools
- import time
- # Example simple http server as thread
- class SilentHandler(http.server.SimpleHTTPRequestHandler):
- def log_message(self, format, *args, **kwargs):
- # do any logging you like there
- pass
- class MyHttpServerThread(threading.Thread):
- def __init__(self, address=("0.0.0.0",8000), target_dir="."):
- super().__init__()
- self.address = address
- self.target_dir = "."
- self.server = http.server.HTTPServer(address, functools.partial(SilentHandler, directory=self.target_dir))
- self.start()
- def run(self):
- self.server.serve_forever(poll_interval=1)
- def stop(self):
- self.server.shutdown() # don't call from this thread
- # test
- if __name__ == "__main__":
- http_server = MyHttpServerThread()
- time.sleep(10)
- http_server.stop()
- print("done")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement