批量下载Excel中的链接中的文件
前几天有一个小任务,就是把一个Excel中的三百多个音频下载下来,这些音频都是URL的形式,于是就写了个python脚本把他们都抓了下来,因为很简单,所以就直接贴代码了:
注意:首先要把Excel转换成CSV文件的格式
import csv
import requests# 文件路径,需要替换成自己的文件路径
file_rode = 'C:\\Users\\59990\\Desktop\\audio.csv'
# 打开文件
csv_file = csv.reader(open(file_rode, 'r', encoding='utf-8'))
# 跳过标题行
next(csv_file, None)# 可以先用下面注释里的语句看看你文件中的URL取出来之后是什么格式的
# for url in csv_file:
# print(url)# 接着对里边的每一条链接做如下操作
for url in csv_file:# 这里需要注意的是要将取出来的URL做一个字符串类型转换,并截取其中的link的部分r = requests.get(str(url)[2:101])music = r.content# 目标路径需要换成你自己的路径,str(url)[90:-2]这个的意思是给文件命名new_url = "C:/Users/59990/Desktop/music/" + str(url)[90:-2]# 下面是将文件以二进制的形式写入到目标文件中with open(new_url, 'ab') as file:file.write(music)file.flush
总结:这次虽然是一个很简单的小脚本,但是对其中的字符串的转换那里搞了很大一会,从csv中直接读出来的数据好像不是以字符串的形式。直到现在我才明白过来,是我读取的方式不对,我那种方法是直接读取了整个csv,正确的方法应该是读取csv中的我需要的那一列,改进后的方法如下
import csv
import requests# 文件路径,需要替换成自己的文件路径
file_rode = 'C:\\Users\\59990\\Desktop\\audio.csv'# 打开文件
csv_file = csv.reader(open(file_rode, 'r', encoding='utf-8'))
# 跳过标题行
next(csv_file, None)# 可以先用下面注释里的语句看看你文件中的URL取出来之后是什么格式的
# for url in csv_file:
# print(url)# 接着对里边的每一条链接做如下操作
for url in csv_file:# 这里就直接是url[0],意思是csv中的第一列的内容,不再是以表格的形式给到r = requests.get(url[0])music = r.content# 目标路径需要换成你自己的路径,str(url)[90:-2]这个的意思是给文件命名new_url = "C:/Users/59990/Desktop/music/" + str(url)[90:-2]# 下面是将文件以二进制的形式写入到目标文件中with open(new_url, 'ab') as file:file.write(music)file.flush
批量下载Excel中的链接中的文件相关推荐
- 关于Java实现批量下载MinIO指定目录下的所有文件
关于Java实现批量下载MinIO指定目录下的所有文件 Straightforward String bucketName = "bucket01";// 检查'mybucket' ...
- python实现批量下载Excel中PDF的URL到本地
需求:Excel中有成千上万个PDF的URL要批量下载到本地,然后打印出来. 12行代码搞定,无废话,直接上代码 import openpyxl import requestswb = openpyx ...
- Python批量下载excel表中超链接图片
目录 背景 数据格式 处理步骤 1.使用xlrd读取excel表格数据 2.详细代码 ①引入相关库 ②实例代码 背景 导出数据到excel,数据中有图片,需求是批量下载图片的指定文件夹 数据格式 数据 ...
- 使用Python脚本下载yandex云盘链接中的内容
前言 在下载yandex disk云盘中其他人分享的一些内容时,正常情况下点击下载按钮即可.但是很多时候需要在没有图形界面的Linux机器上下载或者批量下载一批链接,这个时候需要使用脚本方式下载. 方 ...
- outlook批量下载附件_在Outlook中批量打印PDF附件
outlook批量下载附件 This article was written by Sean Tsai, a data warehousing expert and good friend of th ...
- osm数据下载 python_批量下载osm的分区域的osm文件
# coding: utf-8 #!/usr/bin/python # #### http://www.openstreetmap.org 的分区后的osm数据批量下载工具(需要python的requ ...
- osm数据下载 python_osm数据下载 python_批量下载osm的分区域的osm文件
# coding: utf-8 #!/usr/bin/python # #### http://www.openstreetmap.org 的分区后的osm数据批量下载工具(需要python的requ ...
- 编写ruby脚本批量下载《老友记》全集(mp3文件)
<老友记>是美剧中的经典,其中的对白也早已成为英语爱好者的宝典,我当然也是粉丝之一啊.前几天在普特英语网 上发现有所有10季老友记的对白mp3文件下载 ,大喜!!可惜每一集的连接都在不同的 ...
- Linux运维之批量下载指定网站的100个图片文件,并找出大于200KB的文件
题目为: 有一百个图片文件,它们的地址都是 http://down.fengge.com/img/1.png http://down.fengge.com/img/2.png - 一直到http:// ...
最新文章
- 华为实习日记——第二十三天
- oracle+字段+virtual,Oracle 11g新特性之--虚拟列(Virtual Column)
- NYOJ 585 取石子(六)
- ustc小道消息20211216
- Cannot read property ‘forceUpdate‘ of undefined
- Crossing River(信息学奥赛一本通-T1232)
- linux IP 设置
- 帆软邮件STMP配置、发送测试及邮件发送失败日志排查
- 一直弹出adb已停止工作(远程主机强迫关闭现有的连接)的最简单完美解决法
- Web浏览器没有Flash如何播放RTMP协议直播
- 【ROM制作工具】线刷包转卡刷包制作教程
- [生存志] 第99节 白起奋威屠百万
- OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
- POJ 2248 Addition Chains
- 【DB笔试面试608】在Oracle中,如何使用STA来生成SQL Profile?
- Al-learing数学基础,平均差,方差,协方差
- arduino读取控制手柄
- 机器学习和人工智能发展简史
- 液晶显示器测试软件的使用经验分享(资源有下载链接)
- 将VS编译器默认为X64
热门文章
- UE4 AES加密解密(解决中文乱码问题)
- 成都拓嘉启远:拼多多如何提升店铺实力
- Outlook邮箱注册教程 不信你看完还不懂
- 程序员学习能力提升三要素[转]
- haimianjie工作日记:2023年5月
- Windows系统如何自动关机?1行代码就能实现自动关机(超简单)
- a40i 全志 芯片手册_全志A40i怎么样 A40i芯片参数介绍
- 电脑正在使用时,突然没有声音怎么办?
- [附源码]Python计算机毕业设计SSM基于的英语学习网站的设计与实现(程序+LW)
- 【2023-04-20】小红书web端搜索采集笔记视频点赞关注自动评论去水印接口源码php