BQMail2.0: 向IRIS DMC发送数据请求的Python模块(1. 数据查询)
文章目录
BQMail是用于向IRIS申请数据的Python模块。2016年我们完成了BQMail 1.0版本,但受限于当时IRIS服务的欠缺,随着时间的发展软件出现了以下不足:
- 发送命令繁琐
- 需要本地地震目录
- 可拓展性差
因此我们重写了BQMail的源码,结合了IRIS DMC Web Services和ObsPy,实现了地震和台站的快速查询,并能够以Python模块的方式调用来发送数据请求。
安装
新版的BQMail除了可以源码安装还可以通过PyPI安装
通过PyPI安装
对于普通用户我们推荐这种安装方式:
|
|
通过源码安装
BQMail的源码目前托管在Github上,先克隆该项目到本地:
|
|
然后进入目录并安装
|
|
地震事件查询
我们调用ObsPy中的IRIS客户端实现了命令行下的地震时间快速查询,安装BQMail后在命令行输入
|
|
获取详细的帮助信息。
|
|
-b <starttime>
:地震目录的开始时间,格式与obspy.UTCDateTime
的一致。-e <endtime>
:地震目录的结束时间,格式同上。-d <lat>/<lon>/<minradius>/<maxradius>
:以中心点个半径限制发震位置lat
:中心点纬度lon
:中心点经度minradius
:距中心点的最小半径maxradius
:距中心点的最大半径
-r <lon1>/<lon2>/<lat1>/<lat2>
:以矩形范围限制发震位置lon1
:最小经度lon2
:最大经度lat1
:最小纬度lat2
:最大纬度
-m <minmagnitude>[/<maxmagnitude>]
:震级范围,如果只有一个参数则只指定最小震级。-p <mindepth>[/<maxdepth>]
:震源深度范围,如果只有一个参数只指定最小震源深度。-c <catalog>
:地震目录的提供者,可选GCMT|PDE|ISC
。
实例
- 查询2019年发生的大于7级的地震
|
|
- 查询发震时刻在2014-1-1至2019-1-1,中心点为23˚E 114˚N,震中距在30˚-90˚之间,震级大于5.5级的地震
|
|
台站查询
同样的方式实现了命令行下对IRIS DMC台站的查询,在命令行输入
|
|
可以获取帮助
|
|
-n <network>
:台网名-s <station>
:台站名-r <lon1>/<lon2>/<lat1>/<lat2>
:以矩形范围限制台站位置,用法与get_events
相同。-d <lat>/<lon>/<minradius>/<maxradius>
:以中心点和半径限制台站位置,用法与get_events
相同-b <starttime>
: 数据记录的开始时间,用法与get_events
相同。-e <endtime>
:数据记录的结束时间,用法与get_events
相同。-c <channel>
:通道名
⚠️注意
台网名、台站名和通道名支持通配符。
实例
- 查询CB台网下的所有台站
|
|
- 查询位置在经度98-110,纬度21-36,2003-1-1至今的宽频带台站
|
|
文章作者 Mijian Xu
上次更新 2020-06-09