python3获取文件中url内容并下载代码实例


Posted in Python onDecember 27, 2019

这篇文章主要介绍了python3获取文件中url内容并下载代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time  : 2019-12-25 11:33
# @Author : Anthony
# @Email  : ianghont7@163.com
# @File  : get_video_audio_file.py

import xlrd as xl
import requests



# 创建文件夹
def mkdir_floder(path):
  import os
  isExists = os.path.exists(path)
  if not isExists:
    os.makedirs(path)
    # print(path + ' 创建成功')
    return True
  else:
    # 如果目录存在则不创建,并提示目录已存在
    # print(path + ' 目录已存在')
    return False



def request_floder(floder01,floder02,filename,url,types):
  # 拼接全路径
  all_path = basedirpath+floder01+'/'+floder02+'/'
  res = requests.get(url.strip())
  music = res.content
  with open(all_path+filename+'.'+types, 'ab') as file: # 保存到本地的文件名
    file.write(music)
    file.flush()



def get_xls(filename):
  # 打开文件
  xls_file=xl.open_workbook(filename)
  # 获取第一个sheet内容
  xls_sheet=xls_file.sheets()[0]
  # 总行数
  line_nums = xls_sheet.nrows
  for i in range(0,line_nums):
    # 获取每一行的内容
    row_value = xls_sheet.row_values(i)
    # 获取第一级目录名称
    folder1 = row_value[0]
    # 获取第二级目录名称
    folder2 = row_value[1]
    # 获取文件名
    file_name = row_value[2]
    # 获取url内容
    url = row_value[3]
    # 创建目录
    mkdir_floder(basedirpath+folder1+'/'+folder2)
    # 转换url的类型为dict
    url = eval(url)

    # 获取视频内容
    if "audio" in url:
      if url["audioF"].strip() != "":
        audio_url = url["audioF"]
        audio_url_end = audio_url.split('.')[-1]
        print(audio_url)
        request_floder(folder1, folder2, file_name, audio_url, audio_url_end)

      elif url["audio"].strip() != "":
        audio_url = url["audio"]
        audio_url_end = audio_url.split('.')[-1]
        print(audio_url)
        request_floder(folder1, folder2, file_name, audio_url, audio_url_end)

    # 获取音频内容
    elif "video" in url:
      if url["video"].strip() != "":
        video_file = url["video"]
        video_file_end = video_file.split('.')[-1]
        print(video_file)
        request_floder(folder1, folder2, file_name, video_file, video_file_end)

if __name__ == "__main__":
  # 文件存放路径
  basedirpath = "/Users/ianthony/Desktop/Devops/"
  # 读取的xlsx文件
  get_xls("001.xlsx")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python正则表达式介绍
Aug 06 Python
python登陆asp网站页面的实现代码
Jan 14 Python
六个窍门助你提高Python运行效率
Jun 09 Python
详细解读Python中解析XML数据的方法
Oct 15 Python
Python如何快速上手? 快速掌握一门新语言的方法
Nov 14 Python
python numpy元素的区间查找方法
Nov 14 Python
python从子线程中获得返回值的方法
Jan 30 Python
使用python3调用wxpy模块监控linux日志并定时发送消息给群组或好友
Jun 05 Python
使用Python实现毫秒级抢单功能
Jun 06 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
Jun 25 Python
Django实现内容缓存实例方法
Jun 30 Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 Python
用python拟合等角螺线的实现示例
Dec 27 #Python
PyTorch 对应点相乘、矩阵相乘实例
Dec 27 #Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
Dec 27 #Python
python装饰器相当于函数的调用方式
Dec 27 #Python
Python 实现数组相减示例
Dec 27 #Python
Pandas 解决dataframe的一列进行向下顺移问题
Dec 27 #Python
Pandas实现DataFrame按行求百分数(比例数)
Dec 27 #Python
You might like
PHP4在Windows2000下的安装
2006/10/09 PHP
PHP UTF8编码内的繁简转换类
2009/07/20 PHP
JpGraph php柱状图使用介绍
2011/08/23 PHP
微信扫描二维码登录网站代码示例
2013/12/30 PHP
PHP闭包函数详解
2016/02/13 PHP
PHP实现动态创建XML文档的方法
2018/03/30 PHP
tp5框架使用composer实现日志记录功能示例
2019/01/10 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
浅谈JS闭包中的循环绑定处理程序
2014/11/09 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
2015/02/26 Javascript
JavaScript 2048 游戏实例代码(简单易懂)
2016/03/25 Javascript
javascript jquery对form元素的常见操作详解
2016/06/12 Javascript
妙用Angularjs实现表格按指定列排序
2017/06/23 Javascript
详解ionic本地相册、拍照、裁剪、上传(单图完全版)
2017/10/10 Javascript
Node.js创建HTTP文件服务器的使用示例
2018/05/11 Javascript
vue中的router-view组件的使用教程
2018/10/23 Javascript
微信小程序解析富文本过程详解
2019/07/13 Javascript
vuex state中的数组变化监听实例
2019/11/06 Javascript
JS实现省市县三级下拉联动
2020/04/10 Javascript
js面试题之异步问题的深入理解
2020/09/20 Javascript
json.stringify()与json.parse()的区别以及用处
2021/01/25 Javascript
详解Python编程中包的概念与管理
2015/10/16 Python
python迭代器与生成器详解
2016/03/10 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
python3使用QQ邮箱发送邮件
2020/05/20 Python
HTML5 CSS3打造相册效果附源码下载
2014/06/16 HTML / CSS
Html5定位终极解决方案
2020/02/05 HTML / CSS
英国排名第一的礼品体验公司:Red Letter Days
2018/08/16 全球购物
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
班班通项目实施方案
2014/02/25 职场文书
大二学生自我检讨书
2014/10/23 职场文书
怒海潜将观后感
2015/06/11 职场文书
Java使用jmeter进行压力测试
2021/07/09 Java/Android