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结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
Apr 23 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
Django REST framework视图的用法
Jan 16 Python
Python 监测文件是否更新的方法
Jun 10 Python
Python 虚拟空间的使用代码详解
Jun 10 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
Jul 23 Python
简单了解django orm中介模型
Jul 30 Python
PyTorch实现ResNet50、ResNet101和ResNet152示例
Jan 14 Python
Python在终端通过pip安装好包以后在Pycharm中依然无法使用的问题(三种解决方案)
Mar 10 Python
python读取yaml文件后修改写入本地实例
Apr 27 Python
一劳永逸彻底解决pip install慢的办法
May 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
PHP脚本数据库功能详解(下)
2006/10/09 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
PHP数组操作简单案例分析
2016/10/15 PHP
JQuery获取表格数据示例代码
2014/05/26 Javascript
JavaScript的arguments对象应用示例
2014/09/15 Javascript
使用原生JS实现弹出层特效
2014/12/22 Javascript
Bootstrap项目实战之首页内容介绍(全)
2016/04/25 Javascript
浅谈JavaScript函数的四种存在形态
2016/06/08 Javascript
浅析vue component 组件使用
2017/03/06 Javascript
解决在Bootstrap模糊框中使用WebUploader的问题
2018/03/22 Javascript
element-ui 上传图片后清空图片显示的实例
2018/09/04 Javascript
微信小程序列表时间戳转换实现过程解析
2019/10/12 Javascript
vue中使用vee-validator完成表单校验方案
2019/11/01 Javascript
Vuex实现数据共享的方法
2019/12/20 Javascript
JS 获取文件后缀,判断文件类型(比如是否为图片格式)
2020/05/09 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
基于Python实现文件大小输出
2016/01/11 Python
python实现汉诺塔方法汇总
2016/07/25 Python
python中正则的使用指南
2016/12/04 Python
python一键去抖音视频水印工具
2018/09/14 Python
Python+AutoIt实现界面工具开发过程详解
2019/08/07 Python
Django实现celery定时任务过程解析
2020/04/21 Python
ffmpeg+Python实现B站MP4格式音频与视频的合并示例代码
2020/10/21 Python
医疗保健专业人士购物网站:Scrubs & Beyond
2017/02/08 全球购物
巴西最大的在线约会网站:ParPerfeito
2018/07/11 全球购物
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
成功的餐厅经营创业计划书
2014/01/15 职场文书
通信研究生自荐信
2014/02/01 职场文书
QQ空间主人寄语大全
2014/04/12 职场文书
司机岗位职责说明书
2014/07/29 职场文书
法人委托书范本
2014/09/15 职场文书
南京市纪委监察局整改方案
2014/09/16 职场文书
老兵退伍感言
2015/08/03 职场文书
python中pandas对多列进行分组统计的实现
2021/06/18 Python