鱼C论坛

 找回密码
 立即注册
查看: 1471|回复: 1

[已解决]excel转换成vcf报错

[复制链接]
发表于 2021-8-9 16:20:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import quopri
import xlrd
 
#111.xlsx为需要处理的表格(姓名+电话)
file2='1_(最新版本)深圳沿江高速项目通讯录(2021.7.6)(1).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()


报错原因:Traceback (most recent call last):
  File "C:\Users\15125\Desktop\csv_vcf.py", line 10, in <module>
    workbook=xlrd.open_workbook(file2)
  File "D:\python3.8\lib\site-packages\xlrd\__init__.py", line 170, in open_workbook
    raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported')
xlrd.biffh.XLRDError: Excel xlsx file; not supported
最佳答案
2021-8-10 19:31:49
xlrd不支持xlsx,只支持xls。
想读取xlsx,用openpyxls。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-8-10 19:31:49 | 显示全部楼层    本楼为最佳答案   
xlrd不支持xlsx,只支持xls。
想读取xlsx,用openpyxls。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 15:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表