使用Python通过xlrd处理exce
短信预约 -IT技能 免费直播动态提醒
项目需求:
通过指定excel文件,文件格式如下:
要求下载第四列URL中的图片,图片保存名称为,url中的名称,每个公司需要单独建立一个独立的文件夹,公司下面会有不同类型的图片,不同类型的图片也需要不同的文件夹保存,最终将图片保存到指定公司,指定的类型下面
实现代码如下:
"""
从excel获取url,下载指定图片保存到指定目录
"""
#xlrd模块需要手工安装,此为处理excel模块
import xlrd
import os
import urllib.request
def dir(dir_name="p_w_picpaths"):
#设定图片保存目录,基于当前程序运行目录
if os.path.isdir(dir_name):
pass
else:
os.mkdir(dir_name)
def saveImage(img, url):
#保存图片方法,需要两个参数,一个为图片名,一个为下载的url
respones = urllib.request.urlopen(url)
p_w_picpath = respones.read()
with open(img, "wb") as f:
f.write(p_w_picpath)
if __name__ == "__main__":
data = xlrd.open_workbook(r"D:\p_w_picpaths.xls") #打开指定文件
table = data.sheet_by_name(u"Sheet 1") #选择工作薄
nrows = table.nrows #获取行数
for i in range(1410,1425):
"""
可通过if判断只下载特定行图片,或者修改以上括号数字为从n到n
"""
rows = table.row_values(i)
dir(dir_name = rows[0]) #创建各供应商目录
p_w_picpathsclass = rows[0] + "\\" + rows[2] #获取证件类型
dir(dir_name = p_w_picpathsclass) #创建供应商目录下子目录,各证件类型
url = r"http://" + rows[3]
p_w_picpathname = rows[0] + "\\" + rows[2] + "\\" + url.split("/")[-1] #指定图片保存的位置与名称
saveImage(p_w_picpathname, url)
代码中模块下载与安装部分请查询其它相关资料
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341