
本文介绍如何使用 python 脚本高效地将包含“email:password”格式的纯文本文件(500+ 行)自动转换为标准、可读性强的 json 数组文件,避免手动操作,确保字段命名统一、缩进规范、兼容主流解析器。
本文介绍如何使用 python 脚本高效地将包含“email:password”格式的纯文本文件(500+ 行)自动转换为标准、可读性强的 json 数组文件,避免手动操作,确保字段命名统一、缩进规范、兼容主流解析器。
在自动化数据处理或账号迁移场景中,常会遇到以简单冒号分隔(如 user@example.com:123456)存储的凭证列表。这类文本虽便于人工编辑,但难以被程序直接消费。将其转为标准 JSON 格式,不仅提升可读性与可维护性,也为后续导入数据库、调用 API 或集成到配置系统打下基础。
以下是一个轻量、健壮的 Python 脚本,适用于 Python 3.6+ 环境:
import json
json_list = []
# 替换为你的实际输入文件名(支持 .txt/.log 等纯文本格式)
input_file = 'accounts.txt'
with open(input_file, 'r', encoding='utf-8') as f:
for line_num, line in enumerate(f, start=1):
line = line.strip()
if not line: # 跳过空行
continue
try:
email, password = line.split(':', 1) # 仅按第一个冒号分割,防止密码含冒号时报错
json_list.append({
"Email": email.strip(),
"Password": password.strip()
})
except ValueError:
print(f"⚠️ 第 {line_num} 行格式错误,跳过:'{line}'")
# 输出到 result.json,缩进 4 空格,中文/特殊字符正常显示
output_file = 'result.json'
with open(output_file, 'w', encoding='utf-8') as f:
json.dump(json_list, f, indent=4, ensure_ascii=False)
print(f"✅ 成功转换 {len(json_list)} 条记录,已保存至 '{output_file}'")
关键特性说明:
使用 MapV-Three 构建专业的 3D 地图和 GIS 应用 - 基于 Z-up 坐标系的 3D 地图库,支持地图编辑、测量工具、要素绘制、数据管理等地理可视化功能。适用于创建地图编辑器、测量工具、空间数据可视化等 Web-GIS 应用。
- ✅ 安全分割:使用
split(':', 1)保证即使密码含多个冒号(如pass:word:123),也只按首个冒号切分; - ✅ 容错处理:自动跳过空行与格式异常行,并提示具体行号,便于排查原始数据问题;
- ✅ 编码兼容:显式指定
utf-8编码,支持邮箱/密码中的 Unicode 字符(如中文、emoji); - ✅ 输出友好:
ensure_ascii=False保留原始字符(而非\uXXXX转义),indent=4生成易读缩进格式。
使用前请注意:
- 将原始文本文件重命名为
accounts.txt(或修改脚本中input_file变量); - 确保每行严格为
Email:Password格式,无多余空格或注释; - 敏感数据请在安全环境下运行,转换后及时清理明文密码文件;
- 如需进一步增强安全性(如哈希密码、加密存储),应在 JSON 生成后叠加额外处理步骤。
运行脚本后,你将获得一个符合 RFC 8259 标准的 JSON 文件,可直接被 JavaScript、Python、Postman 或各类配置管理工具加载解析。










