import socketserver import multiprocessing as mp print("Started App.") class TCPHandler(socketserver.StreamRequestHandler): """ The request handler class for our server. It is instantiated once per connection to the server, and must override the handle() method to implement communication to the client. """ def handle(self): # self.rfile is a file-like object created by the handler; # we can now use e.g. readline() instead of raw recv() calls self.bytes = self.rfile.read() self.data = self.bytes.decode("utf-8") with open("script.py", "w") as f: f.write(self.data) # Likewise, self.wfile is a file-like object used to write back # to the client self.wfile.write(self.bytes.upper()) HOST, PORT = "localhost", 9999 def serverActivate(): with socketserver.TCPServer((HOST, PORT), TCPHandler) as server: server.serve_forever() def start(): import gradio as gr def op(name): return "" demo = gr.Interface(fn=op, inputs="textbox", outputs="textbox") demo.launch(share=True) mp.Process(target=start).start() mp.Process(target=serverActivate).start()