利用Python自动在CDDIS上下载GNSS数据(观测值、广播星历,电离层格网数据)
2023-09-11 14:20:29 时间
在CDDIS上下载GNSS数据
我们在做GNSS数据处理和分析的时候,难免会用到很多天甚至几年的GNSS数据,如果一个一个下载的话未免过于麻烦,因此博主利用Python写了一个较为简单的下载数据的程序,简单调试一下就能实现自动下载啦
自动下载电离层格网文件
# -*- coding: utf-8 -*-
# @Time : 2022/1/3 14:21
# @Author : xymeng
# @FileName: 000-i.py 下载I文件专用程序
# @Software: PyCharm
'''
url = https://cddis.nasa.gov/archive/gnss/products/ionex/2021/004/igsg0040.21i.Z
url = 'https://cddis.nasa.gov/archive/gnss/products/ionex/2021/'+doy+'/'+'igsg'+doy+str(0)+'.21i.Z'
'''
from selenium import webdriver
from selenium.webdriver.edge.service import Service
import time
from selenium.webdriver.common.by import By
s = Service("E:\edgedriver_win64\msedgedriver.exe") #这里写本地的msedge的所在路径
driver = webdriver.Edge(service=s)
driver.get("https://urs.earthdata.nasa.gov/oauth/authorize?client_id=gDQnv1IO0j9O2xXdwS8KMQ&response_type=code&redirect_uri=https%3A%2F%2Fcddis.nasa.gov%2Fproxyauth&state=aHR0cDovL2NkZGlzLm5hc2EuZ292L2FyY2hpdmUv") #该处为具体网址
driver.refresh() #刷新页面
driver.maximize_window() #浏览器最大化
driver.find_element(By.ID,'username').send_keys('用户名')
driver.find_element(By.ID,'password').send_keys('密码')
time.sleep(0.5)
driver.find_element(By.NAME,'commit').click()
driver.get('https://cddis.nasa.gov/archive/')
time.sleep(10)
driver.find_element(By.ID,'gnss').click()
driver.find_element(By.ID,'products').click()
driver.find_element(By.ID,'ionex').click()
driver.find_element(By.ID,'2019').click()
for doy in range(93,365):
doy = str(doy)
doy = doy.zfill(3)
driver.find_element(By.ID, doy).click()
driver.find_element(By.ID, 'igsg'+doy+str(0)+'.19i.Z').click()
driver.back()
time.sleep(10)
效果图
自动下载观测值O文件
# -*- coding: utf-8 -*-
# @Time : 2022/1/16 16:10
# @Author : xymeng
# @FileName: 000-o.py 下载O文件专用程序
# @Software: PyCharm
'''
url = https://cddis.nasa.gov/archive/gnss/products/ionex/2021/004/igsg0040.21i.Z
url = 'https://cddis.nasa.gov/archive/gnss/products/ionex/2021/'+doy+'/'+'igsg'+doy+str(0)+'.21i.Z'
'''
from selenium import webdriver
from selenium.webdriver.edge.service import Service
import time
from selenium.webdriver.common.by import By
s = Service("E:\edgedriver_win64\msedgedriver.exe") #这里写本地的msedge的所在路径
driver = webdriver.Edge(service=s)
driver.get("https://urs.earthdata.nasa.gov/oauth/authorize?client_id=gDQnv1IO0j9O2xXdwS8KMQ&response_type=code&redirect_uri=https%3A%2F%2Fcddis.nasa.gov%2Fproxyauth&state=aHR0cDovL2NkZGlzLm5hc2EuZ292L2FyY2hpdmUv") #该处为具体网址
driver.refresh() #刷新页面
driver.maximize_window() #浏览器最大化
driver.find_element(By.ID,'username').send_keys('用户名')
driver.find_element(By.ID,'password').send_keys('密码')
time.sleep(0.5)
driver.find_element(By.NAME,'commit').click()
driver.get('https://cddis.nasa.gov/archive/')
time.sleep(10)
driver.find_element(By.ID,'gnss').click()
driver.find_element(By.ID,'data').click()
driver.find_element(By.ID,'daily').click()
driver.find_element(By.ID,'2021').click()
for doy in range(76,365):
doy = str(doy)
doy = doy.zfill(3)
driver.find_element(By.ID, doy).click()
driver.find_element(By.ID, '21d').click()
driver.find_element(By.ID, 'JFNG00CHN_R_2021'+doy+'0000_01D_30S_MO.crx.gz').click()#WUHN00CHN_R_2021
driver.back()
driver.back()
time.sleep(10)
效果图
自动下载星历n文件
# -*- coding: utf-8 -*-
# @Time : 2022/1/17 10:32
# @Author : xymeng
# @FileName: 000-n.py
# @Software: PyCharm
'''
url = https://cddis.nasa.gov/archive/gnss/products/ionex/2021/004/igsg0040.21i.Z
url = 'https://cddis.nasa.gov/archive/gnss/products/ionex/2021/'+doy+'/'+'igsg'+doy+str(0)+'.21i.Z'
'''
from selenium import webdriver
from selenium.webdriver.edge.service import Service
import time
from selenium.webdriver.common.by import By
s = Service("E:\edgedriver_win64\msedgedriver.exe") #这里写本地的msedge的所在路径
driver = webdriver.Edge(service=s)
driver.get("https://urs.earthdata.nasa.gov/oauth/authorize?client_id=gDQnv1IO0j9O2xXdwS8KMQ&response_type=code&redirect_uri=https%3A%2F%2Fcddis.nasa.gov%2Fproxyauth&state=aHR0cDovL2NkZGlzLm5hc2EuZ292L2FyY2hpdmUv") #该处为具体网址
driver.refresh() #刷新页面
driver.maximize_window() #浏览器最大化
driver.find_element(By.ID,'username').send_keys('用户名')
driver.find_element(By.ID,'password').send_keys('密码')
time.sleep(0.5)
driver.find_element(By.NAME,'commit').click()
driver.get('https://cddis.nasa.gov/archive/')
time.sleep(10)
driver.find_element(By.ID,'gnss').click()
driver.find_element(By.ID,'data').click()
driver.find_element(By.ID,'daily').click()
driver.find_element(By.ID,'2020').click()
driver.find_element(By.ID, 'brdc').click()
for doy in range(1,366):
doy = str(doy)
doy = doy.zfill(3)
driver.find_element(By.ID, 'BRDC00IGS_R_2021'+doy+'0000_01D_MN.rnx.gz').click()#BRDC00IGS_R_20210010000_01D_MN.rnx.gz
time.sleep(10)
效果图
相关文章
- Python 操作 Kafka --- kafka-python
- python 中requests的返回数可直接使用json
- 零基础自学Python需要多长时间从入门到精通?学python能兼职挣钱吗?怎么挣钱?
- 【python实战】拒绝黄牛!我要用python原价冲周董演唱会~Python自动秒杀抢票脚本
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
- 《python 与数据挖掘 》一 第2章 Python基础入门
- gyp ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
- Python爬虫技术--基础篇--错误,调试和测试(下)
- Python 初始化方法
- 《Python核心编程(第二版)》——1.4 下载和安装Python
- Python 3 多线程下载百度图片搜索结果
- .NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Ruby/Shell/Agile/CSS/HTML/HTTP/Unix/Linux大量PDF书籍/电子书籍下载, Effective Java 下载
- python实例 函数
- Python 教程之如何使用 matplotlib 在 python 中绘制数学函数
- 【转载】python的魔法方法———A Guide to Python's Magic Methods
- Python切片学习记录
- 2022&2023华为OD机试 - 竖直四子棋(Python)
- letnet图片分类 python实现-详细讲解
- 拉格朗日插值法-python实现
- python 中文转带音调的拼音
- Python 基础 之 网络 socket 使用 tcp (SOCK_STREAM)实现简单 文件下载 的 客户端、服务端
- Python 基础 之 Ubuntu 上安装 python 和 python-pip
- 【Python注意事项】如何理解python中间generator functions和yield表情
- 在docker中安装docker,轻松实现 docker in docker (dind)的应用,并在带有docker的Linux系统中安装基础依赖,搭建Python环境,部署自己的项目或CI和测试
- 在Win7下正确使用Python自带的pip管理工具下载