python 将联系人表格转化为通讯录vcf格式 | 您所在的位置:网站首页 › csv改为vcf › python 将联系人表格转化为通讯录vcf格式 |
事由:需要添加的同事及其联系方式太多,为了省事,因此要将联系人表格转化为vcf格式。(H为手机只能导入cvf格式) import quopri import xlrd #111.xlsx为需要处理的表格(姓名+电话) file2='111.xlsx' #123.vcf 为处理后生成的文件 file1=open('123.vcf','w+',encoding='utf-8') workbook=xlrd.open_workbook(file2) sheet=workbook.sheet_by_index(0) n_of_rows=sheet.nrows print(n_of_rows) for i in range(n_of_rows): file1.write('BEGIN:VCARD\n') file1.write('VERSION:2.1\n') name=sheet.cell(i,0).value name1='N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:;'+str(quopri.decodestring(name.encode()))[2:-1].replace('\\x','=').upper()+';;;\n' name2='FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:;'+str(quopri.decodestring(name.encode()))[2:-1].replace('\\x','=').upper()+'\n' file1.write(name1) file1.write(name2) print('TEL;CELL:'+str(int(sheet.cell(i,1).value))+'\n') file1.write('TEL;CELL:'+str(int(sheet.cell(i,1).value))+'\n') file1.write('END:VCARD\n') file1.close()注: 1:需要处理的联系人表格文件应该与程序放在同一文件夹内,处理后文件为123.vcf,可以将其导入手机通讯录; 2:需要处理的联系人表格格式(xlsx格式)如下: 3.若执行出现下面错误:python的xlrd读取Excel数据失败: raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported') xlrd.biffh.XLRDError: Excel xlsx file; not supported 原因为,xlrd更新版本后不支持xlsx格式数据的读取了,建议先卸载当前版本,再指定回退安装1.2.0版本: #cmd运行 pip uninstall xlrd pip install xlrd==1.2.0 |
CopyRight 2018-2019 实验室设备网 版权所有 |