1. 程式人生 > 程式設計 >python3獲取檔案中url內容並下載程式碼例項

python3獲取檔案中url內容並下載程式碼例項

這篇文章主要介紹了python3獲取檔案中url內容並下載程式碼例項,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time  : 2019-12-25 11:33
# @Author : Anthony
# @Email  : [email protected]
# @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,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,video_file,video_file_end)

if __name__ == "__main__":
  # 檔案存放路徑
  basedirpath = "/Users/ianthony/Desktop/Devops/"
  # 讀取的xlsx檔案
  get_xls("001.xlsx")

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。