[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-93835":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":15,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":16,"rankGlobal":9,"rankLanguage":9,"license":17,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":20,"hasPages":18,"topics":21,"createdAt":9,"pushedAt":9,"updatedAt":22,"readmeContent":23,"aiSummary":24,"trendingCount":15,"starSnapshotCount":15,"syncStatus":25,"lastSyncTime":26,"discoverSource":27},93835,"OutlookRegister","daimon3332\u002FOutlookRegister","daimon3332","Outlook\u002FHotmail account batch registration tool.                          Outlook \u002F Hotmail 账号批量注册工具，支持自动获取 OAuth2 refresh_token",null,"Python",557,80,6,1,0,49.73,"Other",false,"main",true,[],"2026-09-21 04:01:26","\u003Ch1 align=\"center\">OutlookRegister\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  Automated Outlook \u002F Hotmail registration and Microsoft Graph OAuth2 \u003Ccode>refresh_token\u003C\u002Fcode> collection (browser automation via patchright).\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\".\u002FREADME.md\">\u003Cb>English\u003C\u002Fb>\u003C\u002Fa> ·\n  \u003Ca href=\".\u002FREADME.zh-CN.md\">简体中文\u003C\u002Fa> ·\n  \u003Ca href=\".\u002FREADME.zh-TW.md\">繁體中文\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg alt=\"Python 3.10+\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.10%2B-3776AB?logo=python&logoColor=white\">\n  \u003Cimg alt=\"License MIT\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg\">\n  \u003Cimg alt=\"patchright\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FBrowser-patchright-4B5563\">\n  \u003Cimg alt=\"Platform\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPlatform-Windows%20%7C%20Linux%20%7C%20macOS-blue\">\n\u003C\u002Fp>\n\n> Community fork based on **[LainsNL\u002FOutlookRegister](https:\u002F\u002Fgithub.com\u002FLainsNL\u002FOutlookRegister)**.  \n> This fork focuses on registration + OAuth2 hardening: recovery-email binding (optional), multi-stage login challenges, cookie-first OAuth, batching, and interrupt-safe summaries.\n\n---\n\n## Getting started\n\n### 1. Requirements\n\n- Python 3.10+ recommended  \n- A working HTTP\u002FSOCKS proxy (strongly recommended)  \n- Optional: a temp-mail \u002F CF Temp Mail compatible API if you enable recovery-email binding  \n\n### 2. Install\n\n```bash\ngit clone \u003Cthis-repo-url>\ncd OutlookRegister\npip install -r requirements.txt\npatchright install chromium\n```\n\n### 3. Configure\n\n```bash\n# Windows\ncopy config.example.json config.json\n\n# Linux \u002F macOS\ncp config.example.json config.json\n```\n\nEdit `config.json`: set **proxy** at minimum. Leave secrets empty in any copy you publish.\n\n### 4. Run\n\n```bash\npython main.py\n```\n\nSuccessful tokens are **appended** to `Results\u002Foauth2.txt`:\n\n```text\nemail----password----client_id----refresh_token\n```\n\nLogs are written under `log\u002F`. Press **Ctrl+C** to stop; the process writes a summary, then cleans browsers\u002Fprofiles.\n\n---\n\n## `config.json` field reference\n\nShip template: `config.example.json` (same shape as the empty `config.json`).\n\n### Top-level\n\n| Field | Type | Description |\n| --- | --- | --- |\n| `email_suffix` | string | Mail domain suffix used when generating accounts, e.g. `@outlook.com` or `@hotmail.com`. |\n| `headless` | bool | `false` = show browser windows; `true` = headless. |\n| `bot_protection_wait` | number | Base pacing for form fill (seconds). Code multiplies by 1000 for delays. |\n| `max_captcha_retries` | number | Extra press\u002Fretry rounds for the press-and-hold captcha (about `max_captcha_retries + 1` hold attempts). |\n| `captcha_strategy` | number | Captcha \u002F handoff mode (see table below). |\n| `concurrent_flows` | number | Concurrent worker threads (parallel browsers). |\n| `tasks` | number | Global cap on submitted tasks. Stops when this or `success_tasks` is reached (whichever first). |\n| `success_tasks` | number \\| null | Global success cap. `null` = no success cap (still limited by `tasks`). |\n| `batch_success_limit` | number | Successes per batch before resetting in-process proxy weights \u002F stats and starting the next batch. Cumulative success\u002Ftime keep counting. Does **not** change a fixed proxy’s real exit IP. |\n| `proxy` | object | Proxy pool (required for real use). |\n| `oauth2` | object | Graph OAuth2 settings. |\n| `temp_mail` | object | Optional recovery-email binding via temp-mail API. |\n\n### `captcha_strategy`\n\n| Value | Behavior |\n| --- | --- |\n| `0` | Fully automatic (captcha + mailbox + OAuth). |\n| `1` | Semi-automatic: you press captcha; rest automatic. |\n| `2` | Hand-off after captcha UI appears; no program OAuth for that task. |\n\n### `proxy`\n\n| Field | Type | Description |\n| --- | --- | --- |\n| `mode` | string | `single` = one port (`single_port`); `multiple` = port range `port_start`…`port_end`. |\n| `type` | string | Proxy scheme, e.g. `http`, `socks5`. |\n| `host` | string | Proxy host, e.g. `127.0.0.1`. **Fill this** before running. |\n| `single_port` | number | Port when `mode` is `single`. |\n| `port_start` | number | First port when `mode` is `multiple`. |\n| `port_end` | number | Last port when `mode` is `multiple` (inclusive). |\n| `max_per_proxy` | number | Max times a port may be selected before it is skipped (usage counters reset when all ports are exhausted or a batch resets). |\n\n### `oauth2`\n\n| Field | Type | Description |\n| --- | --- | --- |\n| `enable_oauth2` | bool | If `false`, registration success alone counts without fetching tokens. |\n| `client_id` | string | Azure\u002Fpublic client id used for authorize + token exchange. |\n| `redirect_url` | string | Redirect URI registered for the client (default `http:\u002F\u002Flocalhost`). |\n| `Scopes` | string[] | OAuth scopes, typically `offline_access` + Graph default. |\n\n### `temp_mail`\n\nUsed only if Microsoft shows **“Help us protect your account”** and binding is enabled.\n\n| Field | Type | Description |\n| --- | --- | --- |\n| `enabled` | bool | `false` = never auto-bind recovery mail (skip path when the page appears). |\n| `base_url` | string | Temp-mail API base URL (your deployment). Leave empty if unused. |\n| `admin_password` | string | Admin password for creating addresses. **Do not publish.** |\n| `domain` | string | Mail domain for new addresses. |\n| `name_prefix` | string | Optional local-part prefix. |\n| `enable_prefix` | bool | Whether to apply `name_prefix`. |\n| `code_timeout` | number | Seconds to wait for a verification code email. |\n| `poll_interval` | number | Seconds between inbox polls. |\n\n---\n\n## What it does\n\n```text\nGenerate email\u002Fpassword\n  -> open signup page\n  -> fill form\n  -> press-and-hold captcha\n  -> (optional) bind recovery email if Microsoft asks\n  -> enter Outlook mailbox\n  -> OAuth2 (cookie-first, then new browser with injected cookies)\n  -> append refresh_token to Results\u002Foauth2.txt\n```\n\nOAuth handles common intermediate pages: personal\u002Fwork account chooser, protect-account, email proof (or password path), KMSI “No”, consent, and code capture.\n\n---\n\n## Key features\n\n- Concurrent multi-proxy registration  \n- Batch success limit with in-process weight reset  \n- Cookie-first OAuth + cold\u002Fnew-browser fallback with `storage_state` when possible  \n- Optional recovery-email binding via configurable temp-mail API  \n- Ctrl+C: write interrupt summary, then close browsers and clear profiles  \n- Failure breakdown and progress logs under `log\u002F`  \n\n---\n\n## Upstream and acknowledgements\n\n- [LainsNL\u002FOutlookRegister](https:\u002F\u002Fgithub.com\u002FLainsNL\u002FOutlookRegister) — original project this fork is based on  \n- [Microsoft identity platform \u002F Graph](https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fgraph\u002Fauth-v2-user) — OAuth2 and Graph scopes  \n- [patchright](https:\u002F\u002Fgithub.com\u002FKaliiiiiiiiii-Vinyzu\u002Fpatchright) — browser automation  \n\n---\n\n## License\n\nDistributed under the [MIT License](.\u002FLICENSE).  \nAttribution retained for upstream OutlookRegister and MIT-licensed portions this project builds on.\n\n---\n\n## Community\n\n- \u003Ca href=\"https:\u002F\u002Flinux.do\">\u003Cimg src=\".\u002Flinuxdo.webp\" width=\"22\" height=\"22\" alt=\"LINUX DO\" align=\"center\">\u003C\u002Fa> [linux.do](https:\u002F\u002Flinux.do): **Learn AI on L-Station!!!**\n- [Nodeseek.com](https:\u002F\u002Fwww.nodeseek.com): **Nodeseek is a place for people who love web development, hosting, vps \u002F server and other geek things.**\n","OutlookRegister 是一个自动化注册 Outlook\u002FHotmail 账户并获取 Microsoft Graph OAuth2 refresh_token 的工具。它基于浏览器自动化（patchright）实现账户创建、多阶段登录挑战应对（如按住验证码）、可选的恢复邮箱绑定、Cookie 优先的 OAuth 流程，支持并发批量执行与中断安全的会话清理。项目适配 Windows\u002FLinux\u002FmacOS，强调注册与 token 获取流程的稳定性与抗检测能力，适用于需要大量合法 Outlook 账户及其长期访问凭证的合规场景，如企业级邮件集成测试、OAuth 授权链路验证或自动化服务账号初始化。",2,"2026-08-06 03:55:23","CREATED_QUERY"]