
أداة تسجيل حسابات Outlook تلقائية باستخدام بروتوكول HTTP النقي مع حل كابتشا PerimeterX، وإدارة مجمع الوكلاء، واسترجاع رموز البريد الإلكتروني لإنشاء حسابات جماعية.
تسجيل جماعي لـ Microsoft Outlook عبر البروتوكول الخالص · حل PerimeterX · لوحة تحكم ويب · تجمّع بروكسي / تجمّع حسابات / فحص النشاط في أداة واحدة
ماذا يحل · نظرة سريعة · بدء سريع · استراتيجية مكافحة الحظر · English · Tiếng Việt
lxf746/outlook-auto-registerهذا المشروع مخصص للتعلم والبحث فقط، ولا يجوز استخدامه لأغراض تجارية مخالفة. يجب على المستخدم تقييم شروط خدمة Microsoft والامتثال لها بنفسه، وكل العواقب المترتبة على ذلك يتحملها المستخدم وحده.
باختصار: تسجيل جماعي لـ Outlook عبر البروتوكول الخالص + لوحة تحكم ويب، من حل PX إلى ربط proofs وقراءة البريد عبر Graph، العملية الكاملة مرئية.
معظم سكربتات تسجيل Outlook تحل فقط مشكلة «كيفية إرسال طلبات HTTP»، مع فراغ كبير في الجانب الهندسي: كيف تتجاوز PerimeterX، وكيف تُدوّر البروكسيات، وكيف تربط بريد استرداد proofs، وكيف تقرأ البريد بالرمز المميز بعد التسجيل، وكيف تدير الدفعات، وكيف تفحص نشاط الحسابات الميتة. هذا المشروع يربط كل ذلك في سلسلة كاملة.
| سكربتات مشابهة | Outlook Auto Register | |
|---|---|---|
| طريقة التنفيذ | أتمتة متصفح / بروتوكول غير مكتمل | بروتوكول HTTP خالص (Fluent Web API + PX solver)، بدون اعتماد على متصفح |
| حل الكابتشا | يدوي / منصة واحدة | captcha.run press/silent، متوافق مع CapSolver / EzCaptcha |
| البروكسي | HTTP_PROXY واحد | تجمّع بروكسي SQLite: فحص مسبق، إحصائيات نجاح، ربط sticky، استراتيجية تدوير |
| proofs | غالباً يتم تخطيها مباشرة (نسبة حظر عالية) | تجمّع بريد استرداد IMAP خارجي / Cloudflare catch-all لاستلام الرموز |
| المخرجات | ملف txt بالحسابات وكلمات المرور | combo رباعي / سداسي + تخزين موحد في SQLite |
| التشغيل | لا يوجد | لوحة تحكم ويب: تسجيل دفعات، تجمّع حسابات، فحص نشاط، إبقاء IMAP حياً |
| قراءة البريد | اعتماد قوي على تفعيل IMAP | أوضاع متعددة Graph / Outlook REST / Thunderbird scope، قراءة البريد فور التسجيل |
على اليسار إعدادات المعاملات، وعلى اليمين دفع SSE للسلسلة الكاملة: فحص البروكسي المسبق → PX → CreateAccount → proofs → إمكانية قراءة البريد عبر Graph. في الأسفل ملخص لمتوسط الوقت لكل طلب وزمن كل مرحلة.

توجيه تلقائي حسب scope إلى Graph / Outlook REST / IMAP، مع دعم مهام الإبقاء الجماعي والتحقق الذاتي من قراءة البريد.

سلسلة التسجيل
cf_domain)، يُمنع التخطي الافتراضيالإدارة التشغيلية
حل الكابتشا واستلام الرموز
.env كخطة احتياطيةصفحة تسجيل الدخول OAuth (PKCE)
→ signup.live.com/signup (تحليل ServerData)
→ CheckAvailableSigninName
→ risk/initialize (continuationToken فارغ)
→ humanSensorUrl + تحميل مسبق لـ PX collector
→ risk/verify #1 (بيانات px + msaRiskVerifySignature)
→ [riskChallengeRequired] captcha.run press/silent
→ risk/verify #2 (challengeSolution + بيانات px)
→ CreateAccount
→ oauth20_authorize.srf (تسجيل دخول slt)
→ [proofs] بريد استرداد خارجي / CF catch-all / (تخطي عبر cancel عند OUTLOOK_SKIP_PROOFS=1)
→ [اختياري] تخطي Passkey / الحصول على refresh_token لـ OAuth البريد
git clone https://github.com/lxf746/outlook-auto-register.git
cd outlook-auto-register
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# عدّل .env: تجمّع بريد الاسترداد، نطاق CF، إلخ (يُفضّل كتابة مفتاح captcha عبر لوحة التحكم في قاعدة البيانات)
.venv/bin/uvicorn webapp.server:app --host 0.0.0.0 --port 8890
افتح http://127.0.0.1:8890 في المتصفح:
host:port:user:pass أو قالب بوابة دوّارة {sid})عند أول استخدام يكون التشغيل التجريبي مفعّلاً افتراضياً، ولن يتم تسجيل حقيقي؛ بعد التأكد من صحة الإعدادات ألغِ التحديد ثم نفّذ.
# حساب واحد (يُوصى بـ graph_recovery سداسي: Graph token + بريد استرداد)
OUTLOOK_MAIL_TOKEN_MODE=login_exe python main.py \
--proxy 'gate.example.com:1000:user:pass-US-{sid}' \
--country US -v
# دفعات (توازي محافظ + تذبذب)
REG_PROXY_RETRIES=6 python main.py --count 10 --concurrency 2 \
--country US --proxy 'gate.example.com:1000:user:pass-US-{sid}' -v
# تسجيل فقط، دون إكمال OAuth (بدون refresh_token)
python main.py --skip-login
# تسجيل دون تبديل refresh_token
python main.py --no-mail-token
python scripts/ez_selftest.py
python scripts/captcha_run_selftest.py
| الوضع | الصيغة | الوصف |
|---|---|---|
graph | رباعي | email----password----client_id----refresh_token |
graph_recovery / login_exe | سداسي | رباعي + recovery_email----recovery_password (موصى به) |
dual | سداسي | رباعي + login_client_id----login_refresh_token (رمزان مزدوجان) |
قائمة «صيغة المخرجات» في لوحة التحكم الويب:
| الخيار | الوضع المقابل |
|---|---|
| Graph رباعي | graph |
| Graph سداسي (موصى به) | graph_recovery |
| IMAP سداسي | login_exe |
OUTLOOK_MAIL_TOKEN_MODE)| الوضع | الوصف |
|---|---|
graph | قراءة البريد عبر Graph API، جاهز فور التسجيل |
outlook_rest | قراءة البريد عبر Outlook REST API |
login_exe / recovery | Thunderbird scope (IMAP/POP/SMTP + EWS + Mail.Read/Send)، نفس أسلوب البائعين |
dual | رمزان مزدوجان: Graph لاستلام الرموز + تفويض تسجيل دخول SSO |
# خلفية IMAP (كل سطر email----password)
OUTLOOK_RECOVERY_BACKEND=imap
OUTLOOK_EXTERNAL_RECOVERY_POOL_FILE=/path/recovery_pool.txt
OUTLOOK_RECOVERY_IMAP_HOST=imap.your-recovery-host.com
# خلفية Cloudflare catch-all
OUTLOOK_RECOVERY_BACKEND=cf_domain
OUTLOOK_CF_DOMAIN=your-domain.com
OUTLOOK_CF_WORKER_API_URL=https://apimail.your-domain.com
بعد الربط الناجح يُكتب combo_recovery سداسي ويُضاف إلى accounts_recovery.txt.
يُمنع تخطي proofs بشكل جماعي (OUTLOOK_SKIP_PROOFS=1 للتصحيح فقط).
accounts/outlook.db){sid})، وسمات الدول، والفحص المسبق، وإحصائيات النجاحHTTP_PROXY كخطة احتياطية| المتغير | الوصف |
|---|---|
CAPTCHA_RUN_API_KEY | مفتاح Bearer لـ captcha.run (الكتابة عبر الويب في DB لها الأولوية) |
CAPTCHA_RUN_API_BASE | الافتراضي https://apicn.captcha.run |
HTTP_PROXY | بروكسي احتياطي لـ CLI |
OUTLOOK_MAIL_TOKEN_MODE | graph / login_exe / outlook_rest / dual |
OUTLOOK_RECOVERY_BACKEND | imap / cf_domain |
OUTLOOK_EXTERNAL_RECOVERY_POOL_FILE | ملف تجمّع بريد استرداد IMAP |
OUTLOOK_RECOVERY_IMAP_HOST | مضيف IMAP لبريد الاسترداد |
OUTLOOK_SKIP_PROOFS | 1 فقط للسماح بتخطي proofs عبر cancel (الافتراضي 0) |
OUTLOOK_DB_PATH | مسار SQLite مخصص |
المتغيرات الكاملة في .env.example.
outlook-auto-register/
├── main.py # مدخل CLI
├── outlook_api_reg/
│ ├── register.py # التنسيق الرئيسي
│ ├── bootstrap.py # OAuth + تحميل PX المسبق
│ ├── api.py # API + msaRiskVerifySignature
│ ├── risk.py # risk/verify بخطوتين
│ ├── captcha.py # captcha.run / CapSolver / EzCaptcha
│ ├── post_register.py # slt + proofs + Passkey + OAuth البريد
│ ├── external_recovery_pool.py
│ ├── cf_domain_mail.py # استلام رموز Cloudflare catch-all
│ ├── database.py # تخزين موحد SQLite
│ ├── proxy_pool.py # إدارة تجمّع البروكسي
│ ├── graph_mail.py # قراءة البريد Graph / REST
│ └── constants.py # ثوابت البروتوكول
├── px_solver/ # وحدة حل PerimeterX
├── webapp/
│ ├── server.py # لوحة تحكم FastAPI
│ └── static/index.html
├── scripts/
│ ├── ANTIBAN.md # استراتيجية مكافحة الحظر
│ └── keepalive.py
├── assets/screenshots/ # لقطات README
└── accounts/ # بيانات الحسابات المولدة (مستثناة من git)
--country US)AADSTS7005106 riskBlocksolver فقط (captcha.run عبر البروتوكول الخالص)راجع scripts/ANTIBAN.md — اختيار البروكسي، استراتيجية proofs، التوازي والتذبذب، الفحص الذاتي للمخرجات، إلخ.
| الرابط | الوصف |
|---|---|
| مجموعة QQ 1040827527 | نقاش وتبادل |
| LINUX DO | نقاش مجتمعي |
| English · Tiếng Việt | وثائق متعددة اللغات |
إذا كان هذا المشروع مفيداً لك، نرحب بمنحه نجمة ⭐. إذا ظهرت رسالة حد API الخاص بـ GitHub مؤقتاً في الرسم البياني، فهي مشكلة في خدمة star-history الخارجية ولا تؤثر على استخدام المستودع.
هذا المشروع مرخّص بموجب GPL-3.0.