2. 算法说明

进入需要下载的数据所在的目录,获取并解析该目录下的信息,解析出cdf文件名后,将cdf文件下载到内存中,随后保存到硬盘中。程序使用python3实现。

3. 程序代码

#!/bin/python3

# get the rbsp data

# writen by Liangjin Song on 20191219

import sys

import requests

from pathlib import Path

# the url containing the cdf files

url="https://www.rbsp-ect.lanl.gov/data_pub/rbspa/ECT/level2/2016/"

# local path to save the cdf file

path="/home/liangjin/Downloads/test/"

def main():

re=requests.get(url)

html=re.text

cdfs=resolve_cdf(html)

ncdf=len(cdfs)

if ncdf == 0:

return

print(str(ncdf) + " cdf files are detected.")

i=1

# download

for f in cdfs:

rcdf=url+f

lcdf=path+f

print(str(i)+ " Downloading " + rcdf)

download_cdf(rcdf,lcdf)

i+=1

return

# resolve the file name of cdf

def resolve_cdf(html):

cdfs=list()

head=html.find("href=")

if head == -1:

print("The cdf files not found!")

return cdfs

leng=len(html)

while head != -1:

tail=html.find(">",head,leng)

# Extract the cdf file name

cdf=html[head+6:tail-1]

head=html.find("href=",tail,leng)

if cdf.find('cdf') == -1:

continue

cdfs.append(cdf)

return cdfs

def download_cdf(rcdf,lcdf):

rfile=requests.get(rcdf)

with open(lcdf,"wb") as f:

f.write(rfile.content)

f.close()

return

if __name__ == "__main__":

lpath=Path(path)

if not lpath.is_dir():

print("Path not found: " + path)

sys.exit(0)

sys.exit(main())

4. 使用说明

url为远程cdf文件所在路径。

path为本地保存cdf文件的路径。

url和path的末尾都有“/”(Linux下情形,若是Windows,路径分隔符为“\”,则path末尾应为“\”)。

5. 运行效果

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

python代码示例下载-使用python3批量下载rbsp数据的示例代码相关推荐

  1. Python3 根据m3u8下载视频,批量下载ts文件并且合并

    Python3 根据m3u8下载视频,批量下载ts文件并且合并 m3u8是苹果公司推出一种视频播放标准,是一种文件检索格式,将视频切割成一小段一小段的ts格式的视频文件,然后存在服务器中(现在为了减少 ...

  2. Python 之谷歌瓦片地图影像批量下载

    Python 之谷歌瓦片地图影像批量下载 最近在写毕业论文,想用谷歌影像作为底图来展示研究区,然后 Google 了很多脚本,结果发现输出的影像都不带空间坐标系,所以就想自己写个小工具,通过输入空间范 ...

  3. python如何批量下载邮箱全部附件_Outlook附件下载:如何批量下载整个文件夹中所有邮件的所有附件?...

    系统:Windows10家庭版(电脑原装) 软件:Office 365家庭版(Outlook2016) *** 因为隐私原因删除电子邮件地址 *** (exchange) ;   *** 因为隐私原因 ...

  4. 下载网页图片-批量下载网页图片软件免费

    下载网页图片,今天给大家分享一款免费批量下载网页图片软件,支持任意格式的图片批量下载,只需要输入关键词或批量导入网页链接即可下载图片.批量下载任意网页上的图片,每个人都可以拥有各种高清图源.支持批量图 ...

  5. img绝对路径图片显示_使用python爬虫去风景图片网站批量下载图片

    使用python爬虫(requests,BeautifulSoup)去风景图片网站批量下载图片 1.写代码背景: 今天闲来无事,想弄点图片放到电脑,方便以后使用,故去百度查找一些风景图片网站,发现图片 ...

  6. 利用Python调用ECMWF欧洲中心API批量下载数据

    前段时间由于需要下载ECMWF(欧洲中期天气预报中心)的再分析数据,学习了如何利用Python调用ECMWF欧洲中心API进行批量下载.这种下载ECMWF数据的方法在官网上有非常详细的介绍.我只是对这 ...

  7. Python+IDM实现百度网盘批量下载

    最近发现了一个Tampermonkey脚本,用来下载百度网盘能达到几十MB/s,然而不能批量下载(比如几十集的电视剧),于是借用爬虫知识,利用Python+Selenium批量调用此脚本获得直链,并在 ...

  8. python爬虫入门:搜索和批量下载图片

    目录 python爬虫批量下载图片 前言 一.具体流程 1.使用必应搜索图片 2.实现方法 导入模块 具体代码 二.效果演示 python爬虫批量下载图片 前言 本篇文章以在必应下载硬币图片为例,实现 ...

  9. Python requests下载超大文件/批量下载文件

    (一)下载超大文件: 使用 python 下载超大文件,直接全部下载,文件过大,可能会造成内存不足,这时候要使用 requests 的 stream 模式 主要代码如下 iter_content:一块 ...

最新文章

  1. 2017.0612.《计算机组成原理》总线结构
  2. 操作索引库-创建索引库
  3. 说两句电视剧《东归英雄》
  4. 前端学习(2903):用vite开发环境
  5. MySQL CookBook 学习笔记-01
  6. 5 SU01给用户增加权限
  7. YOLOv4 | 用C++ 和OpenCV 实现视频目标检测
  8. Linux下openSSL安装并颁发证书
  9. UE4中Bebavior Tree中Delay及其后面代码失效的原因
  10. java json 变量所有的属性
  11. opencv 4.5.5 imread 失败(报错)的处理方式
  12. oracle联合分组查询,Oracle分组查询
  13. 笔记本电脑的计算机配置在哪里可以找到,笔记本无线设置在哪里_笔记本电脑设置无线网络的步骤-win7之家...
  14. 绕过 office 宏密码保护
  15. 中国车牌号的识别大全
  16. Python100例——第五章----不定方程的解
  17. pycharm 中 ‘unicodeescape’ codec can’t decode bytes in position XXX: trun错误解决方案背景描述...
  18. VUE解决warning(Emitted value instead of an instance of Error) el-table-column v-for=item in batch问题
  19. SuperMap 许可简介
  20. 奇怪的报错(uncaught typeerror illegal invocation)

热门文章

  1. 互联网金融乱弹4:讨论金融系统日切处理
  2. Tomca的启动与关闭
  3. 【洛谷】【USACO】P1118 数字三角形
  4. SQL语言 之 数据查询
  5. 史上最全的CSS hack方式一览(转)
  6. Sliverlight之 画刷
  7. 网页布局设计的标准尺寸
  8. How to Pronounce Numbers 20 – 1 Billion
  9. 货郎担问题TSP(dp解法)
  10. Vofuria 的 imageTarget 的图片无法显示或者显示为空白