from flask import Flask, render_template, request, jsonify from curl_cffi import requests import random app = Flask(__name__) # السيرفر المستقر (يمكنك تغييره من searx.space إذا لزم الأمر) SEARXNG_URL = 'https://search.rhscz.eu' @app.route('/') def home(): return render_template('index.html') @app.route('/search') def search(): query = request.args.get('q') if not query: return jsonify({"error": "No query provided"}), 400 try: # 🚀 محاكاة كاملة لمتصفح Chrome 120 لتجاوز الحظر # impersonate="chrome120" تقوم بمحاكاة الـ TLS Fingerprint والـ Headers response = requests.get( f"{SEARXNG_URL}/search", params={'q': query, 'format': 'json'}, impersonate="chrome120", timeout=10 ) if response.status_code == 200: return jsonify(response.json()) elif response.status_code == 429: return jsonify({"error": "Server overloaded (429). Please try again in a minute."}), 429 else: return jsonify({"error": f"Engine error: {response.status_code}"}), response.status_code except Exception as e: return jsonify({"error": f"Simulation Error: {str(e)}"}), 500 if __name__ == '__main__': app.run(host='0.0.0.0', port=7860)