from flask import Flask, request, jsonify from browser_controller import BrowserController app = Flask(__name__) browser = BrowserController() @app.route("/command", methods=["POST"]) def command(): data = request.json action = data.get("action") selector = data.get("selector") value = data.get("value") pixels = data.get("pixels", 0) url = data.get("url") try: if action == "navigate" and url: result = browser.navigate(url) elif action == "click" and selector: result = browser.click(selector) elif action == "type" and selector and value: result = browser.type_text(selector, value) elif action == "scroll": result = browser.scroll(pixels) else: return jsonify({"error": "Invalid command"}), 400 return jsonify(result) except Exception as e: return jsonify({"error": str(e)}), 500 @app.route("/close", methods=["POST"]) def close_browser(): browser.close() return jsonify({"status": "browser closed"}) if __name__ == "__main__": app.run(host="0.0.0.0", port=5000)