使用python将excel表格通讯录导入手机通讯录

核心问题:

安卓手机使用的通讯录文件格式为.vcf (应该是vCard 格式),这种格式的文件可以直接使用手机通讯录打开,导入手机通信录。

我们需要做的就是:将excel里面的信息按照格式要求写入一个.vcf 文件。

.vcf 文件 用文本编辑器打开如下。

使用python 解决问题

直接上代码


import sys
import os
import redef csv2vcf_android(csv_filename, encoding='utf-8'):"""csv格式文件转换为安卓适用的vcf格式文件"""# 1.读取csv文件with open(csv_filename, 'r', encoding='utf-8') as f:ftext_list = f.readlines()f.close()# 2.将cvs转换为vcf格式vcards = ''for line in ftext_list[1:]:tel_numbers = ''name_tel_list = line.strip().split(',')if name_tel_list[0]:tel_name = name_tel_list[0]  # 姓名org = name_tel_list[1]  # 单位for tel in name_tel_list[2:]:  # 电话tel_numbers += f'TEL;CELL:{tel}\n'vcard = f'BEGIN:VCARD\nN:{tel_name}\nORG:{org}\n{tel_numbers}END:VCARD\n'vcards += vcard# 3.保存转换后的vcf格式文件(fpath, temp_fname) = os.path.split(csv_filename)(fname, fextension) = os.path.splitext(temp_fname)with open(f'{fpath}{fname}_android.vcf', "w", encoding=encoding) as f:try:f.write(vcards)finally:f.close()def csv2vcf_ios(csv_filename, encoding='utf-8'):"""csv格式文件转换为ios适用vcf格式文件"""# 1.读取csv文件with open(csv_filename, 'r', encoding='utf-8') as f:ftext_list = f.readlines()f.close()# 2.将cvs转换为vcf格式vcards = ''for line in ftext_list[1:]:# tel_numbers = ''name_tel_list = line.strip().split(',')if name_tel_list[0]:tel_name = name_tel_list[0]  # 姓名xing = tel_name[0]  # 姓ming = tel_name[1:]  # 名# print(xing,ming,len(ming))org = name_tel_list[1]  # 单位short_tel = name_tel_list[2]long_tel = name_tel_list[3]vcard = f'BEGIN:VCARD\nVERSION:3.0\nN:{xing};{ming};;;\nFN:{ming} {xing}\nORG:{org};\nTEL;TYPE=CELL;TYPE=pref;TYPE=VOICE:{long_tel}\nTEL;TYPE=WORK;TYPE=VOICE:{short_tel}\nPRODID:-//Apple Inc.//iCloud Web Address Book 2021B82//EN\nREV:2020-11-26T19:51:27Z\nEND:VCARD\n'vcards += vcard# 3.保存转换后的vcf格式文件(fpath, temp_fname) = os.path.split(csv_filename)(fname, fextension) = os.path.splitext(temp_fname)with open(f'{fpath}{fname}_ios.vcf', "w", encoding=encoding) as f:try:f.write(vcards)finally:f.close()filename = sys.argv[1]
csv2vcf_android(filename)
csv2vcf_ios(filename)

使用python将excel表格通讯录导入手机通讯录相关推荐

  1. 将自己的Access数据库通讯录导入手机通讯录

    将自己的Access数据库通讯录导入手机通讯录 要换用儿子的Sony Ericsson K700手机.换手机本身没有什么,但让我最头痛的事情是换手机意味我原来手机里的几百个电话号码薄作废了,需要在新的 ...

  2. python导入excel表格-通过Python将Excel表格信息导入数据库

    前言 公司原采用Excel表格方式记录着服务器资产信息,随着业务的增加,相应的硬件资产也增加,同时物理机虚拟化出多台虚拟机,存在表格管理杂乱.变更资产信息不能及时相互同步, 为了紧跟时代的步伐,老大搞 ...

  3. python导入excel表格-Python 将Excel表格数据导入MySQL数据库

    今天分享一个刚刚完成的Python脚本,一个实用的小技能,就是利用Python代码,将EXCEL表格数据导入到MySQL数据库中!话不多说,下面代码示例. Excel表格数据.jpg 1示例代码: i ...

  4. python快速将excel表格规范导入word

    提示:快速将excel表格规范导入word python快速将excel表格规范导入word 前言 二.开发环境 三.实现步骤 1.引入库 2.代码片段 前言 最近接到一个需求,公司的统计需要一个ex ...

  5. python读取Excel表格,运营商通信数据

    python读取Excel表格,按照某一列的时间,每十分钟统计一次,这是运营商的数据处理 下面是代码 # coding:utf-8 #导入读取Excel的库 import xlrd #导入pyecha ...

  6. python处理excel表格大小-如何用python处理excel表格

    前面我们已经学到了很多Python在数学领域的应用,用Python编程可以轻松解决一些数学中的常见问题.当然Python的功能应用还远远不止于此,我们的很多日常工作也可以用Python来实现.今天南京 ...

  7. python读取excel表格-python读取excel表格中的数据

    使用python语言实现Excel 表格中的数据读取,需要用到xlrd.py模块,实现程序如下: import xlrd #导入xlrd模块 class ExcelData(): def __init ...

  8. python画柱状图和折线图-Python读取Excel表格,并同时画折线图和柱状图的方法

    今日给大家分享一个Python读取Excel表格,同时采用表格中的数值画图柱状图和折线图,这里只需要几行代码便可以实. 首先我们需要安装一个Excel操作的库xlrd,这个很简单,在安装Python后 ...

  9. python与excel表格-如何用python处理excel表格

    openpyxl是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装. 读取Excel文件 需要导入相关函数 from openpyxl import l ...

最新文章

  1. JavaWeb项目第三次总结_成绩查询的实现
  2. 如何让 Drupal 使用 Wordpress 形式的编辑代码?
  3. 关于医学院网络中心成立工作室的设想
  4. linux配置ip地址 routes,CentOS 7 设置网络IP地址(示例代码)
  5. PAT 乙级1014 福尔摩斯的约会(C语言)
  6. 错误上报_PCIe错误的上报方式
  7. 学校与工作(献于在校大学生及入职不久的工作者)
  8. VALSE学习(五):看图说话-Visual Question Answering as Reading Comprehension
  9. 【合宙GSM模块Air202 烧录iRTU固件连接阿里云】
  10. 使用FreeCAD进行零件建模
  11. SQL:取 分组后 的 按时间倒序 的前5条数据
  12. 攻防世界 Reverse logmein
  13. 1分钟学会给你的网站添加上https!
  14. PrintDocument打印、预览、打印机设置和打印属性的方法(较完整)
  15. JS识别二维码、JS生成二维码
  16. Android近期阅读书籍
  17. 网易蜗牛读书产品体验报告(1.9.6版本)
  18. java查缺补漏之第十二天(不宜妄自菲薄,不宜狂妄自大)
  19. 2.3 发光二极管(LED灯)
  20. Python高级教程:玩转Linux操作系统

热门文章

  1. 【iOS与EV3混合机器人编程系列之二】工欲善其事,必先利其器(准备篇)
  2. 《Dynamic Filter Networks》动态过滤网络
  3. 基石为勤能补拙的迷宫之旅——第十五天(Python模块)
  4. chrome android 85,终于!安卓版Chrome 85将升级到原生64位:支持Android 10及以上系统...
  5. 【数据库系统工程师】1.1计算机硬件基础知识
  6. iOS第三方工程加固
  7. linux内核cpu负载计算,Load和CPU利用率是如何算出来的
  8. 搭建达梦数据库数据守护-实时主备
  9. 数据结构——树、森林、二叉树的转换
  10. CVE-XX-XX:“Atom截胡”Windows内核提权漏洞分析