前几天有一个小任务,就是把一个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中的链接中的文件相关推荐

  1. 关于Java实现批量下载MinIO指定目录下的所有文件

    关于Java实现批量下载MinIO指定目录下的所有文件 Straightforward String bucketName = "bucket01";// 检查'mybucket' ...

  2. python实现批量下载Excel中PDF的URL到本地

    需求:Excel中有成千上万个PDF的URL要批量下载到本地,然后打印出来. 12行代码搞定,无废话,直接上代码 import openpyxl import requestswb = openpyx ...

  3. Python批量下载excel表中超链接图片

    目录 背景 数据格式 处理步骤 1.使用xlrd读取excel表格数据 2.详细代码 ①引入相关库 ②实例代码 背景 导出数据到excel,数据中有图片,需求是批量下载图片的指定文件夹 数据格式 数据 ...

  4. 使用Python脚本下载yandex云盘链接中的内容

    前言 在下载yandex disk云盘中其他人分享的一些内容时,正常情况下点击下载按钮即可.但是很多时候需要在没有图形界面的Linux机器上下载或者批量下载一批链接,这个时候需要使用脚本方式下载. 方 ...

  5. outlook批量下载附件_在Outlook中批量打印PDF附件

    outlook批量下载附件 This article was written by Sean Tsai, a data warehousing expert and good friend of th ...

  6. osm数据下载 python_批量下载osm的分区域的osm文件

    # coding: utf-8 #!/usr/bin/python # #### http://www.openstreetmap.org 的分区后的osm数据批量下载工具(需要python的requ ...

  7. osm数据下载 python_osm数据下载 python_批量下载osm的分区域的osm文件

    # coding: utf-8 #!/usr/bin/python # #### http://www.openstreetmap.org 的分区后的osm数据批量下载工具(需要python的requ ...

  8. 编写ruby脚本批量下载《老友记》全集(mp3文件)

    <老友记>是美剧中的经典,其中的对白也早已成为英语爱好者的宝典,我当然也是粉丝之一啊.前几天在普特英语网 上发现有所有10季老友记的对白mp3文件下载 ,大喜!!可惜每一集的连接都在不同的 ...

  9. Linux运维之批量下载指定网站的100个图片文件,并找出大于200KB的文件

    题目为: 有一百个图片文件,它们的地址都是 http://down.fengge.com/img/1.png http://down.fengge.com/img/2.png - 一直到http:// ...

最新文章

  1. 华为实习日记——第二十三天
  2. oracle+字段+virtual,Oracle 11g新特性之--虚拟列(Virtual Column)
  3. NYOJ 585 取石子(六)
  4. ustc小道消息20211216
  5. Cannot read property ‘forceUpdate‘ of undefined
  6. Crossing River(信息学奥赛一本通-T1232)
  7. linux IP 设置
  8. 帆软邮件STMP配置、发送测试及邮件发送失败日志排查
  9. 一直弹出adb已停止工作(远程主机强迫关闭现有的连接)的最简单完美解决法
  10. Web浏览器没有Flash如何播放RTMP协议直播
  11. 【ROM制作工具】线刷包转卡刷包制作教程
  12. [生存志] 第99节 白起奋威屠百万
  13. OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  14. POJ 2248 Addition Chains
  15. 【DB笔试面试608】在Oracle中,如何使用STA来生成SQL Profile?
  16. Al-learing数学基础,平均差,方差,协方差
  17. arduino读取控制手柄
  18. 机器学习和人工智能发展简史
  19. 液晶显示器测试软件的使用经验分享(资源有下载链接)
  20. 将VS编译器默认为X64

热门文章

  1. UE4 AES加密解密(解决中文乱码问题)
  2. 成都拓嘉启远:拼多多如何提升店铺实力
  3. Outlook邮箱注册教程 不信你看完还不懂
  4. 程序员学习能力提升三要素[转]
  5. haimianjie工作日记:2023年5月
  6. Windows系统如何自动关机?1行代码就能实现自动关机(超简单)
  7. a40i 全志 芯片手册_全志A40i怎么样 A40i芯片参数介绍
  8. 电脑正在使用时,突然没有声音怎么办?
  9. [附源码]Python计算机毕业设计SSM基于的英语学习网站的设计与实现(程序+LW)
  10. 【2023-04-20】小红书web端搜索采集笔记视频点赞关注自动评论去水印接口源码php