Skip to content

NextWeb4/phone-record-manager

Repository files navigation

手机号记录管理器 for..

中文 | English

手机号记录管理器是一个 Windows 本地桌面应用,用于记录手机号绑定过的网站、App、账号和换号进度。应用基于 Python、PySide6 和 SQLite 构建,数据默认保存在本机,不提供云同步、自动登录、自动提交验证码或绕过第三方安全流程的功能。

功能

  • 本地主密码登录,主密码只保存 PBKDF2-HMAC-SHA256 哈希。
  • 管理多个手机号,并查看每个手机号的绑定记录数量。
  • 新增、编辑、软删除和恢复网站/App 注册记录。
  • 搜索网站/App、账号、手机号、网址、恢复邮箱、标签和备注。
  • 常用网站/App 模板可预填新增记录,同时支持自定义名称。
  • 批量软删除注册记录,批量替换绑定手机号,并保留更换历史。
  • 手动跟踪换号任务状态,不自动访问或修改第三方账号。
  • 注册记录 CSV 导入导出。
  • 使用 cryptography.fernet 导出和导入加密备份。
  • 浅色/深色主题,设置页提供中英文界面切换按钮。
  • About 信息显示作者、邮箱、主页、版本、版权和 License。

安装

使用发布包

  1. 从 GitHub Release 下载 phone-record-manager-windows-v1.0.0.zip
  2. 解压后运行 手机号记录管理器.exe

当前 Windows 版本以 PyInstaller 目录包发布。未伪造数字签名;如系统提示未知发布者,请确认文件 SHA256 与 Release 中的 SHA256SUMS.txt 一致。

从源码运行

python -m venv .venv
.venv\Scripts\python -m pip install --upgrade pip
.venv\Scripts\python -m pip install -r requirements.txt
.venv\Scripts\python -m phone_record_manager

数据库默认路径:

%LOCALAPPDATA%\PhoneRecordManager\phone_records.sqlite3

可通过环境变量覆盖数据目录:

$env:PHONE_RECORD_MANAGER_HOME="D:\Temp\PhoneRecordManagerData"
.venv\Scripts\python -m phone_record_manager

安全边界

  • 本工具只记录手机号、账号和换号进度,不会自动登录第三方网站或 App。
  • 本工具不会自动提交短信验证码、修改第三方账号资料或绕过安全验证流程。
  • 数据默认保存在本机 SQLite 数据库;导出敏感备份时建议使用加密备份功能并离线保存。
  • 使用发布包时,请优先核对 Release 中提供的 SHA256 信息。

使用

  1. 首次启动时设置至少 8 位主密码。
  2. 在“记录”页新增手机号,再新增网站/App 注册记录。
  3. 使用搜索框、状态筛选和表格排序定位记录。
  4. 在“换号”页创建手动换号任务,逐条标记状态。
  5. 在“备份”页导出 CSV 或加密备份。
  6. 在“设置”页切换主题和语言,并查看 About 与最近操作日志。

测试

python -m unittest discover -s tests

打包

.\scripts\build_release.ps1

this is ok 该脚本会:

  • 运行单元测试。
  • 使用 PyInstaller 生成 Windows .exe 目录包。
  • 复制可执行目录到 release-assets\phone-record-manager-windows-v1.0.0\
  • 生成 phone-record-manager-windows-v1.0.0.zip
  • 生成 SHA256SUMS.txt
  • 如果本机已安装 WiX Toolset CLI,则生成 phone-record-manager-windows-v1.0.0.msi

MSI 由 installer\phone_record_manager.wxsscripts\build_msi.ps1 生成,依赖 WiX Toolset CLI。当前脚本不会自动安装 WiX;如未安装,发布脚本会继续生成 portable ZIP 并明确提示 MSI 未生成。使用 dotnet tool install --global wix 安装 WiX 时需要本机已有 .NET SDK。

作者

License

MIT License. See LICENSE.

开源方案审计

方案名称 来源 许可证 核心能力 优点 缺点 维护状态 与当前项目的契合度 可能冲突点 是否采用 采用方式
PySide6 PyPI / Qt for Python LGPLv3/GPLv2/GPLv3/商业授权 Windows 桌面 UI Qt 生态成熟,表单和表格能力完整 发布时需遵守 Qt for Python 许可,包体较大 活跃 LGPL 合规、Qt 插件打包 采用 UI 框架
SQLite / sqlite3 Python 标准库 / SQLite Python License / Public Domain 本地数据库 无服务端,适合本地工具 并发写能力有限 稳定 连接必须启用外键 采用 本地数据持久化
hashlib.pbkdf2_hmac Python 标准库 Python License 主密码哈希 无新增依赖,满足当前安全需求 不如 Argon2 抗 GPU 稳定 迭代次数影响登录耗时 采用 主密码哈希
cryptography PyPI / pyca Apache-2.0 OR BSD-3-Clause 加密备份 Fernet 提供认证加密 新增二进制依赖,备份密码丢失无法恢复 活跃 PyInstaller 需包含依赖 采用 仅用于加密备份
PyInstaller 官方文档 GPL-2.0 with exception Windows .exe 打包 Python 桌面应用常用方案 需验证 Qt 插件和元数据 活跃 依赖许可证需保留 采用 发布包构建
WiX Toolset GitHub / .NET Tool MS-RL MSI 安装器 可生成标准 MSI,并支持添加/删除程序中的发布者、联系邮箱和主页 URL 当前环境未安装 WiX CLI,构建 MSI 需要额外工具链 活跃 与现有 PyInstaller 目录包适配,MSI 只打包 dist 产物 采用配置,不自动安装 installer\phone_record_manager.wxs + scripts\build_msi.ps1

本次发布没有引入新依赖;仅复用现有 PySide6、SQLite、cryptography 和 PyInstaller。


Phone Record Manager

中文 | English

Phone Record Manager is a local Windows desktop application for tracking which websites, apps, and accounts are bound to your phone numbers, plus the manual progress of phone-number replacement. It is built with Python, PySide6, and SQLite. Data is stored locally by default. The app does not implement automatic login, captcha submission, or any bypass of third-party security flows.

Features

  • Local master-password login; only a PBKDF2-HMAC-SHA256 hash is stored.
  • Manage multiple phone numbers and view binding counts.
  • Create, edit, soft-delete, and restore website/app registration records.
  • Search app names, usernames, phone numbers, URLs, recovery emails, tags, and notes.
  • Built-in website/app templates with full support for custom entries.
  • Batch soft-delete registration records and batch replace bound phone numbers with history.
  • Manual replacement-task tracking without automated third-party account changes.
  • CSV import and export for registration records.
  • Encrypted backup import/export using cryptography.fernet.
  • Light/dark theme plus a Chinese/English language toggle in Settings.
  • About information displays author, email, homepage, version, copyright, and license.

Installation

Use a Release Package

  1. Download phone-record-manager-windows-v1.0.0.zip from GitHub Releases.
  2. Extract it and run 手机号记录管理器.exe.

The Windows build is distributed as a PyInstaller folder package. It is not code-signed. If Windows shows an unknown-publisher warning, verify the file SHA256 against SHA256SUMS.txt in the Release.

Run From Source

python -m venv .venv
.venv\Scripts\python -m pip install --upgrade pip
.venv\Scripts\python -m pip install -r requirements.txt
.venv\Scripts\python -m phone_record_manager

Default database path:

%LOCALAPPDATA%\PhoneRecordManager\phone_records.sqlite3

Override the data directory:

$env:PHONE_RECORD_MANAGER_HOME="D:\Temp\PhoneRecordManagerData"
.venv\Scripts\python -m phone_record_manager

Usage

  1. Set a master password on first launch.
  2. Add phone numbers and website/app registration records in Records.
  3. Use search, status filters, and table sorting to find records.
  4. Track manual replacement work in the Replacement tab.
  5. Export CSV or encrypted backups in Backup.
  6. Switch theme/language and view About information in Settings.

Test

python -m unittest discover -s tests

Build

.\scripts\build_release.ps1

The script runs tests, builds the Windows executable folder with PyInstaller, creates phone-record-manager-windows-v1.0.0.zip, writes SHA256SUMS.txt, and builds phone-record-manager-windows-v1.0.0.msi when WiX Toolset CLI is installed.

MSI generation is configured in installer\phone_record_manager.wxs and scripts\build_msi.ps1. The release script does not auto-install WiX; if WiX CLI is missing, it keeps the portable ZIP release and prints a clear MSI warning. Installing WiX with dotnet tool install --global wix requires the .NET SDK.

Author

License

MIT License. See LICENSE.

About

Local Windows phone-number binding record manager built with Python, PySide6, SQLite, backups, and release packaging.

Topics

Resources

License

Stars

30 stars

Watchers

2 watching

Forks

Packages

 
 
 

Contributors