
أداة تجاوز Cloudflare Turnstile | Cloudflare Bypass Tool based on SeleniumBase UC Mode | يدعم Mac/Windows/Linux
مجموعة أدوات متعددة الاستراتيجيات للبحث واختبار تدفقات Cloudflare Turnstile / Challenge على macOS وWindows وLinux.
مجموعة أدوات متعددة الحلول للبحث والاختبار المصرّح به لتدفقات Cloudflare Turnstile / Challenge، مع دعم Mac / Windows / Linux.
النسخة الإنجليزية
هذا المشروع مخصص للبحث التعليمي واختبار الأتمتة المصرّح به فقط. يجب عليك الالتزام بالقوانين المعمول بها وشروط الخدمة لأي موقع مستهدف.
النسخة الصينية
هذا المشروع مخصص للتعلم والبحث واختبار الأتمتة المصرّح به فقط. عند الاستخدام، يجب الالتزام بالقوانين واللوائح المحلية وشروط الخدمة للموقع المستهدف.
النسخة الإنجليزية
دفاعات Cloudflare في 2025–2026 متعددة الطبقات: سمعة الشبكة، وبصمة TLS/HTTP، وتحديات JavaScript، وتفاعل Turnstile، وإشارات بروتوكولات الأتمتة. لا يكفي عميل HTTP واحد لإتمام Turnstile.
يوفر هذا المستودع خمس استراتيجيات قابلة للتشغيل بالإضافة إلى غلاف واحد قائم على الفئات (class)، لتتمكن من اختيار المسار المناسب للبحث بجلسة واحدة، أو المهام المجمّعة، أو التحكم النقي عبر CDP، أو إعادة استخدام جلسة محلولة على مستوى TLS.
الخط الأساسي الموصى به (المسار مفتوح المصدر):
Headed real Chrome
+ optional residential / high-quality egress IP
+ UC reconnect or pure CDP
+ OS-level captcha click when interaction is required
غير موصى به كمسار رئيسي لـ Turnstile:
True headless hard-target Managed Turnstile
Pure curl_cffi / tls-client against Turnstile
playwright-stealth alone as a “one-click” solution
النسخة الصينية
دفاعات Cloudflare في 2025–2026 أصبحت متعددة الطبقات: سمعة الشبكة، وبصمة TLS/HTTP، وJS Challenge، وتفاعل Turnstile، وخصائص بروتوكولات الأتمتة. لا يمكن إتمام Turnstile بعميل HTTP واحد.
يوفر هذا المستودع 5 استراتيجيات قابلة للتشغيل ومدخل غلاف واحد قائم على الفئات، ويغطي البحث بجلسة واحدة، والمهام المجمّعة، والتحكم النقي عبر CDP، وإعادة استخدام الجلسة على مستوى TLS بعد حلّها في المتصفح.
خط أساس أكثر استقرارًا في سيناريو المصدر المفتوح:
有头真实 Chrome
+ 可选住宅或高质量出口 IP
+ UC 断连重连 或 纯 CDP
+ 需要交互时使用操作系统级点击
غير موصى به كمسار رئيسي لـ Turnstile:
真无头模式硬刚 Managed Turnstile
纯 curl_cffi / tls-client 直打 Turnstile
单独依赖 playwright-stealth 作为“一键方案”
| القيد | التفاصيل |
|---|---|
| لا يوجد بيئة تشغيل JavaScript | لا يمكن إتمام Turnstile أو إثبات العمل (PoW) الخاص بالتحديات الحديثة |
| لا توجد DOM / Web APIs | تفتقر إلى إشارات navigator وWebGL وcanvas |
| لا يوجد تفاعل |
| العنصر | المتطلب |
|---|---|
| Python |
حزم Python مدرجة في requirements.txt (تتضمن SeleniumBase وnodriver وcurl_cffi وOpenCV headless وpyvirtualdisplay وغيرها).
تبعيات Python موجودة في requirements.txt (تشمل SeleniumBase وnodriver وcurl_cffi وOpenCV headless وpyvirtualdisplay وغيرها).
git clone https://github.com/1837620622/cloudflare-bypass-2026.git
cd cloudflare-bypass-2026
pip install -r requirements.txt
قم بتثبيت Google Chrome قبل تشغيل البرامج النصية القائمة على المتصفح.
يُرجى تثبيت Google Chrome أولاً قبل تشغيل حلول المتصفح.
git clone https://github.com/1837620622/cloudflare-bypass-2026.git
cd cloudflare-bypass-2026
sudo bash install_linux.sh
البديل اليدوي:
sudo apt-get update
sudo apt-get install -y xvfb libglib2.0-0 libnss3 libatk1.0-0 libatk-bridge2.0-0 \
libcups2 libdrm2 libxkbcommon0 libgbm1 libasound2
python3 -m pip install -r requirements.txt
ملاحظات
.deb مخصصة بشكل أساسي لمعمارية amd64. على أجهزة ARM، قم بتثبيت إصدار Chromium/Chrome المطابق بنفسك.# Install dependencies / 安装依赖
pip install -r requirements.txt
# Method 1 — UC Mode (recommended default) / 方案1 默认推荐
python bypass.py https://example.com
python bypass.py https://example.com -p http://127.0.0.1:7890 -t 90
# Method 5 — CDP Mode / 方案5 CDP
python bypass_cdp.py https://example.com
# Method 3 — nodriver / 方案3
python bypass_nodriver.py https://example.com
استبدل https://example.com بهدف مُخوَّل لك اختباره.
يُرجى استبدال رابط المثال بهدف مصرَّح لك باختباره.
bypass.py (الافتراضي)جلسة Chrome واحدة عبر وضع UC في SeleniumBase: uc_open_with_reconnect + uc_gui_click_captcha / uc_gui_handle_captcha.
وضع UC بمتصفح واحد: فتح الصفحة مع فصل الاتصال، وإجراء نقرة على مستوى النظام عند اكتشاف تحدي.
python bypass.py https://example.com
python bypass.py https://example.com -p http://127.0.0.1:7890
python bypass.py https://example.com -t 90 --incognito
simple_bypass.pyللمهام المجمّعة متعددة البروكسيات أو المتصفحات. نقرات GUI على مستوى نظام التشغيل ليست آمنة للنوافذ المتعددة على سطح مكتب واحد؛ فقد تتنافس العمال المتوازية على الماوس.
مناسب للمعالجة المجمّعة متعددة البروكسيات أو المتصفحات. النقر على مستوى نظام التشغيل ليس آمنًا للنوافذ المتعددة على نفس سطح المكتب؛ قد تتعارض العمليات المتوازية.
python simple_bypass.py https://example.com
python simple_bypass.py https://example.com -r -f proxy.txt -c
python simple_bypass.py https://example.com -P -b 3 -t 30 -n 5 -c
bypass_nodriver.pyتحكم CDP بدون chromedriver. تستخدم نقرة التحدي verify_cf() (مطابقة القالب عبر OpenCV). الرخصة الأصلية هي AGPL-3.0.
تحكم CDP بدون chromedriver. تستخدم نقرة التحدي verify_cf() (مطابقة القالب عبر OpenCV). رخصة المشروع الأصلي هي AGPL-3.0.
pip install "nodriver>=0.50.0" opencv-python-headless
python bypass_nodriver.py https://example.com
python bypass_nodriver.py https://example.com -p http://127.0.0.1:7890
إعادة التوزيع التجاري مغلق المصدر لمكونات AGPL تتطلب مراجعة امتثال منفصلة.
قبل التوزيع التجاري مغلق المصدر لمكونات AGPL، يُرجى إكمال تقييم الامتثال بنفسك.
bypass_curl_cffi.py (ليس مخصصًا لـ Turnstile)تقليد بصمة HTTP/TLS فقط. مناسب للتحديات الضعيفة أو القديمة، أو لإعادة استخدام الكوكيز التي حصل عليها حلّال المتصفح بشرط تطابق User-Agent وعنوان IP الصادر.
تقليد بصمة HTTP/TLS فقط. مناسب للتحديات منخفضة الحماية أو القديمة، أو لإعادة استخدام الكوكيز التي حلّها المتصفح بشرط تطابق UA وعنوان IP الصادر.
python bypass_curl_cffi.py https://example.com
python bypass_curl_cffi.py https://example.com -f chrome146
python bypass_curl_cffi.py https://example.com -p http://127.0.0.1:7890
بصمات الاستخدام الشائعة تشمل: chrome120 وchrome124 وchrome131 وchrome136 وchrome142 وchrome146 وfirefox135 وfirefox144 وsafari17_0 وsafari18_0 وedge101.
bypass_cdp.pyوضع CDP في SeleniumBase (sb_cdp): solve_captcha() مع العودة الاحتياطية إلى gui_click_captcha(). مسار الترقية المفضّل إلى جانب وضع UC في 2026.
وضع CDP في SeleniumBase: يُفضَّل solve_captcha() أولاً، وعند الفشل يُلجأ إلى gui_click_captcha(). مسار ترقية موازٍ لـ UC في 2026.
python bypass_cdp.py https://example.com
python bypass_cdp.py https://example.com -p http://127.0.0.1:7890 -t 90
| الوسيط | الوصف | الافتراضي |
|---|
bypass_seleniumbase.pyغلاف UC كائني التوجه (OOP) لتضمينه في مشاريع أكبر.
غلاف UC كائني التوجه، يسهّل التضمين في مشاريع أكبر.
python bypass_seleniumbase.py https://example.com -p http://127.0.0.1:7890
bypass.py)from bypass import bypass_cloudflare
result = bypass_cloudflare(
"https://example.com",
proxy="http://127.0.0.1:7890",
timeout=90,
save_cookies=True,
)
if result["success"]:
print(result["cf_clearance"])
print(result["user_agent"])
print(result["cookies"])
else:
print(result["error"])
bypass_seleniumbase.py)from bypass_seleniumbase import bypass_and_get_cookies
result = bypass_and_get_cookies(
"https://example.com",
proxy="http://127.0.0.1:7890",
session_name="demo",
)
if result["success"]:
print(result["cf_clearance"])
from bypass_nodriver import bypass_sync
result = bypass_sync("https://example.com", timeout=60.0)
from bypass_curl_cffi import bypass_cloudflare_http
# Optional: reuse browser-solved cookies
result = bypass_cloudflare_http(
"https://example.com",
fingerprint="chrome146",
cookies={"cf_clearance": "..."}, # optional
)
الملف: proxy.txt (إدخال واحد لكل سطر):
127.0.0.1:7890
http://127.0.0.1:7890
socks5://127.0.0.1:1080
http://user:pass@host:port
معظم البروكسيات العامة المجانية لا تدعم HTTPS CONNECT بشكل موثوق. يُفضَّل استخدام موفّري بروكسيات سكنية (residential) موثوقة أو عالية الجودة للبحث والإنتاج.
الغالبية العظمى من البروكسيات العامة المجانية لا تدعم نفق HTTPS بشكل مستقر. في بيئات البحث والإنتاج، استخدم بروكسيات سكنية أو عالية الجودة مُتحقَّقًا منها.
تُكتب الكوكيز في output/cookies/ عند تفعيل الحفظ.
عند تفعيل الحفظ، تُكتب الكوكيز في output/cookies/.
مثال JSON
{
"url": "https://example.com",
"cookies": {
"cf_clearance": "..."
},
"user_agent": "Mozilla/5.0 ...",
"timestamp": "20260714_120000",
"method": "seleniumbase_uc"
}
غالبًا ما يكون cf_clearance مرتبطًا بـ IP + User-Agent. تغيير أيٍّ منهما يتطلب عادةً حلاً جديدًا.
غالبًا ما يرتبط cf_clearance بـ IP + User-Agent. عادةً ما يتطلب تغيير أي طرف حلاً جديدًا.
cloudflare-bypass-2026/
├── bypass.py # Method 1: SeleniumBase UC (default)
├── simple_bypass.py # Method 2: parallel + proxy rotation
├── bypass_nodriver.py # Method 3: nodriver CDP
├── bypass_curl_cffi.py # Method 4: TLS fingerprint (non-Turnstile)
├── bypass_cdp.py # Method 5: SeleniumBase CDP Mode
├── bypass_seleniumbase.py # UC class wrapper
├── install_linux.sh # Linux bootstrap
├── requirements.txt # Python dependencies
├── proxy.txt # Sample proxy list
├── LICENSE
├── README.md
└── output/ # Runtime cookie exports (created on use)
أي طريقة يجب أن أستخدمها أولاً؟
أي طريقة تُستخدم أولاً؟
ابدأ بـ bypass.py أو bypass_cdp.py. استخدم bypass_nodriver.py عندما تريد بيئة CDP بدون chromedriver. استخدم simple_bypass.py للمهام المجمّعة أو تدوير البروكسي. لا تستخدم bypass_curl_cffi.py مع Turnstile.
فضِّل bypass.py أو bypass_cdp.py. استخدم bypass_nodriver.py عندما تحتاج إلى CDP بدون chromedriver. استخدم simple_bypass.py للمهام المجمّعة وتدوير البروكسي. لا تستخدم bypass_curl_cffi.py مع Turnstile.
لماذا نتجنّب وضع headless الحقيقي؟
لماذا يُتجنَّب وضع headless الحقيقي؟
ملفات تعريف headless الخاصة بالأتمتة أسهل في التعرّف عليها. على خوادم Linux بدون سطح مكتب، استخدم Xvfb / شاشة افتراضية (install_linux.sh أو pyvirtualdisplay أو xvfb=True في SeleniumBase) بدلاً من وضع headless في Chrome.
خصائص الأتمتة في وضع headless أسهل اكتشافًا. على خوادم Linux بدون سطح مكتب، استخدم Xvfb / شاشة افتراضية بدلاً من وضع headless الحقيقي في Chrome.
كم تدوم صلاحية cf_clearance؟
ما مدة صلاحية cf_clearance؟
عادةً من عشرات الدقائق إلى عدة ساعات، اعتمادًا على سياسة الموقع. غالبًا ما يكون مرتبطًا بـ IP وUA؛ وتغيير البروكسي يُبطله في أغلب الأحيان.
عادةً من عشرات الدقائق إلى عدة ساعات، اعتمادًا على سياسة الموقع؛ غالبًا ما يرتبط بـ IP وUA، وعادةً ما يتطلب إعادة حل بعد تغيير البروكسي.
خطأ Linux: فشل X11 / العرض
Linux يبلغ عن فشل X11 / العرض
sudo bash install_linux.sh
# or / 或
sudo apt-get install -y xvfb
pip install pyvirtualdisplay
البروكسي لا يعمل
البروكسي غير متاح
تأكد من دعم HTTPS CONNECT والمصادقة. القوائم المجانية العامة غير قابلة للاستخدام في معظمها لهذا النوع من العمل.
تحقق من أن البروكسي يدعم HTTPS CONNECT والمصادقة. القوائم المجانية العامة في معظمها غير قابلة للاستخدام لهذا السيناريو.
nodriver يبلغ عن نقص OpenCV
nodriver ينبّه إلى نقص OpenCV
pip install opencv-python-headless
هل توجد طريقة تجاوز شاملة؟
هل يوجد حل ينجح مع الجميع؟
لا. الدفاعات تتطور باستمرار. تعتمد النتائج على إعدادات الهدف، وسمعة عنوان IP الصادر، ودقة محاكاة المتصفح، والتوقيت. لا تدّعي هذه المجموعة الأدواتية تحقيق نجاح شامل.
لا. الدفاعات تتطور باستمرار. تعتمد النتائج على إعدادات الهدف، وسمعة العنوان الصادر، ودرجة محاكاة المتصفح، والتوقيت. لا تدّعي هذه الأداة تحقيق نجاح شامل.
نرحّب بترتيبات الرعاية، والتطوير المخصص، والاستشارات التقنية.
نرحّب بالتفاوض بشأن عرض الرعاية والتطوير المخصص والاستشارات التقنية.
| القناة | جهة الاتصال |
|---|---|
1837620622 (传康Kk) | |
| البريد الإلكتروني | [email protected] |
| Xianyu / Bilibili | 万能程序员 |
يُرجى التواصل أولاً عبر WeChat مع الإشارة إلى «Business / تعاون تجاري».
يُرجى التواصل عبر WeChat أولاً، مع كتابة ملاحظة «تعاون تجاري».
يتم توزيع كود المستودع بموجب رخصة MIT (انظر LICENSE).
nodriver مرخّص بموجب AGPL-3.0. يتطلب استخدام الطريقة 3 الالتزام بتلك الرخصة.
يتم توزيع كود هذا المستودع بموجب رخصة MIT (انظر LICENSE).
المشروع الأصلي nodriver مرخّص بـ AGPL-3.0. عند استخدام الحل 3 يجب الالتزام برخصته.
إذا كان هذا المشروع مفيدًا لك، ففكر في إضافة نجمة (Star) للمستودع.
إذا كان هذا المشروع مفيدًا لك، فنرحّب بدعمك عبر إضافة نجمة (Star).
| المراجع |
| التعاون التجاري | التعاون التجاري |
| الترخيص | الترخيص |
| # | البرنامج النصي | الاستراتيجية | Turnstile | الأنسب لـ |
|---|
| 1 | bypass.py | SeleniumBase وضع UC | نعم | المسار الافتراضي لجلسة واحدة |
| 2 | simple_bypass.py | UC + التوازي / تدوير البروكسي | نعم | المهام المجمّعة؛ عند التوازي قد يحدث تنازع على نقرات GUI |
| 3 | bypass_nodriver.py | nodriver عبر CDP نقي | نعم | CDP بدون chromedriver؛ يتطلب OpenCV؛ AGPL-3.0 |
| 4 | bypass_curl_cffi.py | بصمة TLS / إعادة استخدام الكوكيز | لا | تحديات JS القديمة أو إعادة استخدام الكوكيز بعد الحل فقط |
| 5 | bypass_cdp.py | SeleniumBase وضع CDP | نعم | مسار خلَف وضع UC العادي في 2026 |
| — | bypass_seleniumbase.py | غلاف فئة UC | نعم | واجهة برمجية قابلة للتضمين للتطوير الثانوي |
| الأولوية | الاختيار | ملاحظات |
|---|
| 1 | bypass.py أو bypass_cdp.py | المدخل الرئيسي للبحث |
| 2 | bypass_nodriver.py | بديل CDP قوي؛ تحقق من رخصة AGPL |
| 3 | simple_bypass.py | الإنتاجية / التدوير؛ يُفضَّل تسلسل نقرات GUI عند الحاجة |
| 4 | حل عبر المتصفح ثم إعادة الاستخدام عبر curl_cffi | يجب الحفاظ على نفس UA ونفس عنوان IP الصادر |
| تجنّب | HTTP نقي ضد Turnstile | لن يُنفِّذ JavaScript أو التفاعل |
| يتطلب الوضع المُدار نقرة حقيقية على مربع الاختيار |
| TLS مجرد إشارة واحدة | مطابقة JA3/JA4 وحدها غير كافية |
| الميزة | الوصف |
|---|
| وضع UC في SeleniumBase | فصل/إعادة اتصال السائق + النقر على الكابتشا على مستوى نظام التشغيل |
| وضع CDP في SeleniumBase | مسار CDP نقي مع تقليل إشارات ارتباط WebDriver |
| nodriver CDP | بدون chromedriver؛ نقرة القالب عبر verify_cf() (OpenCV) |
| التوازي / تدوير البروكسي | عمال مجمّعون وتدوير ملف البروكسي في simple_bypass.py |
| التحكم في المهلة | مهلة شاملة (end-to-end) على التدفقات الرئيسية |
| تصدير الكوكيز | بصيغ JSON وNetscape حيثما ينطبق ذلك |
| متعدد المنصات | macOS وWindows وLinux (يتطلب Linux تشغيل Xvfb عندما يكون المضيف بدون شاشة) |
| 3.9+ |
| المتصفح | Google Chrome (أو Chromium على أنظمة Linux غير amd64) |
| الشاشة | يُفضَّل الوضع المرئي (headed GUI)؛ خوادم Linux: Xvfb / شاشة افتراضية |
| نظام التشغيل | macOS وWindows وLinux |
| بروكسي اختياري | HTTP / HTTPS / SOCKS5 مع دعم HTTPS CONNECT |
| الوسيط | الوصف | الافتراضي |
|---|
url | رابط الهدف | مطلوب |
-p, --proxy | عنوان البروكسي | لا يوجد |
-t, --timeout | المهلة الإجمالية (بالثواني) | 60 |
-r, --reconnect | نافذة فصل/إعادة الاتصال | 5 |
--incognito | ملف تعريف التصفح المتخفي | معطّل |
--no-save | عدم كتابة الكوكيز | معطّل |
| الوسيط | الوصف | الافتراضي |
|---|
-p, --proxy | بروكسي ثابت | لا يوجد |
-f, --proxy-file | ملف قائمة البروكسيات | proxy.txt |
-r, --rotate | تدوير بروكسي تسلسلي | معطّل |
-P, --parallel | متصفحات متوازية | معطّل |
-b, --batch | عدد المتصفحات لكل دفعة | 3 |
-t, --timeout | المهلة (بالثواني) | 60 |
-n, --retries | الحد الأقصى للدفعات أو محاولات البروكسي | 3 |
-c, --check-proxy | فحص أولي لصلاحية البروكسي | معطّل |
-w, --wait | انتظار الصفحة / انتظار إعادة الاتصال | 5 |
--no-save | عدم كتابة الكوكيز | معطّل |
| الوسيط | الوصف | الافتراضي |
|---|
-p, --proxy | عنوان البروكسي | لا يوجد |
-t, --timeout | المهلة الإجمالية | 60 |
--headless | وضع headless (غير موصى به) | معطّل |
--no-save | عدم كتابة الكوكيز | معطّل |
| الوسيط | الوصف | الافتراضي |
|---|
-p, --proxy | عنوان البروكسي | لا يوجد |
-f, --fingerprint | ملف تعريف التقليد | chrome136 |
-t, --timeout | مهلة الطلب | 30 |
-n, --retries | عدد مرات إعادة المحاولة | 3 |
--no-save | عدم كتابة الكوكيز | معطّل |
-p, --proxy | عنوان البروكسي | لا يوجد |
-t, --timeout | ميزانية المهلة الإجمالية | 60 |
--no-save | عدم كتابة الكوكيز | معطّل |
| الحقل | النوع | المعنى |
|---|
success | bool | ما إذا تم الحصول على مسار عبور صالح |
cookies | dict | خريطة الاسم إلى القيمة |
cf_clearance | str أو None | كوكي تصريح Cloudflare عند وجودها |
user_agent | str أو None | UA المتصفح المستخدم للجلسة |
error | str أو None | سبب الفشل |
method | str | معرّف الاستراتيجية |
| البادئة | المصدر |
|---|
cookies_*.json / cookies_*.txt | bypass.py, simple_bypass.py |
cookies_cdp_*.json | bypass_cdp.py |
cookies_nodriver_*.json / cookies_nodriver_*.txt | bypass_nodriver.py |
cookies_curl_*.json / cookies_curl_*.txt | bypass_curl_cffi.py |