python的xlrd读取Excel数据失败: raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported') xlrd.biffh.XLRDError: Excel xlsx file; not supported
使用xlrd读取Excel的xlsx格式表格里的数据,读取失败,报错:
raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported')
xlrd.biffh.XLRDError: Excel xlsx file; not supported
原因,xlrd为2.0.1版本,更新版本后,xlrd不支持xlsx格式数据的读取了,果断减低版本
先卸载2.0.1版本,再指定安装1.2.0版本
xcel 实现图片批量下载
一、操作环境
操作系统:Windows 10 家庭版 64 位
Python 版本:Python 3.7.0
二、操作步骤
首先,我们有下面这样一个 Excel 表格,其中第三列是图片的 URL 地址:
图 1 要操作的表格
代码如下:
import xlrd
import requests
a = xlrd.open_workbook('1.xlsx','r') #打开.xlsx文件
sht = a.sheets()[0] #打开表格中第一个sheet
row1 = sht.row_values(0)
#设置要下载的图片的范围,对应于 Excel 中的行数
start = 0
end = 100
for i in range(start,end):
url = sht.cell(i,2).value #依次读取每行第三列的数据,也就是 URL
f = requests.get(url)
ii = str(i) #按照下载顺序(行号)构造文件名
url2 = url[-3:] #根据链接地址获取文件后缀,后缀有.jpg 和 .gif 两种
dir = ii + "." + url2 #构造完整文件名称
with open(dir,"wb") as code:
code.write(f.content) #保存文件
print(url) #打印当前的 URL
jindu = (i - start) / (end - start) * 100 #计算下载进度
print("下载进度:",jindu,"%") #显示下载进度