Mac版Foxmail联系人批量导入
date
Apr 10, 2022
slug
trgvcmgv
status
Published
tags
Mac
summary
type
Post
背景
公司使用自建邮件系统,提供 POP3 和 STMP 功能,和一个简版的 Web 邮件系统,所以大家往往使用本地邮件客户端,方便收发邮件和新邮件提醒。
为了提高发件时选择收件人的效率,需将公司全员的邮件地址导入到 Foxmail 本地联系人中,方便模糊搜索。
但 Mac Foxmail 并没有提供基本的联系人管理功能,仅支持将来往历史邮件中的地址快捷存入到本地联系人中。
分析
在分析 Foxmail 本地文件时,发现其使用 sqlite3 进行数据管理,而且没有加密。结合Mac Foxmail 导入联系人中提到的,本地邮件数据数据是放在下面路径中。
/Users/用户名/Library/Containers/com.tencent.Foxmail/Data/Library/Foxmail/Profiles
需将用户名更换为自己电脑的用户名,可在终端执行whoami查看 在访达中通过快捷键⌘(command) + ⇧ (shift ) + G打开前往快速访问
在这里可以看到本地邮件账号列表,点击任一个
xxx@xx.com
文件夹可看到联系人数据文件夹Contacts
,即每个本地邮件账户和联系人数据是独立的。在退出 Foxmail 软件后,使用 Navicat 或 DBeaver 打开
contacts.db
,就能看到数据表格式和已有的联系人数据以Foxmail 1.5.6.x为例,用DBeaver打开
操作
下面开始数据导入。
1、首先将已有数据导出到 csv 文件
2、通过 Excel 方式将新旧数据进行合并,得到新的数据。其中除了
c_id
、c_serverid
的值需要唯一,其他就随意了。nick
、addr
就是联系人的姓名、邮箱地址3、将 Excel 数据导入到数据库中就完成了。注意,导入时要清空表中以前的数据
4、关闭 DBeaver 后,重新打开 Foxmail 就看到导入的数据
参考资料: