Filipe Fernandes
Out 27, 2019
whoami
Filipe Fernandes
[F]indable [A]ccessible [I]nteroperable [R]eproducible
Tipo de Dados | Serviço Web | Resposta |
---|---|---|
Dados in-situ (bóias, estações, etc) |
OGC SOS | XML/CSV |
Dados em grade (modelos, satélite) | OPeNDAP | Binário |
Images raster | OGC WMS | GeoTIFF/PNG |
ERDDAP
“novo” padrão da comunidade.
(OGC SOS)
GetCapabilities
: metadadosDescribeSensor
: informação detalhada dos instrumentosGetObservation
: os dadosurl = (
"https://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS?"
"service=SOS"
"&request=GetObservation"
"&version=1.0.0"
"&observedProperty=water_surface_height_above_reference"
"&offering=urn:ioos:station:NOAA.NOS.CO-OPS:8454000"
"&responseFormat=text/csv"
"&eventTime=2018-07-04T00:00:00Z/2018-07-05T00:00:00Z"
"&result=VerticalDatum==urn:ogc:def:datum:epsg::5103"
"&dataType=PreliminarySixMinute"
)
url = (
f"https://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS?"
f"service=SOS&request={request}"
f"&version={version}"
f"&observedProperty={variable}"
f"&offering={buoy}"
f"&responseFormat={response}"
f"&eventTime={yesterday:%Y-%m-%dT%H:%M:%SZ}/"
f"{today:%Y-%m-%dT%H:%M:%SZ}"
f"&result=VerticalDatum=={vdatum}"
f"&dataType={data_type}"
)
(CF)
float temp(ocean_time, s_rho, eta_rho, xi_rho);
temp:standard_name = "sea_water_potential_temperature"
temp:units = "Celsius";
temp:coordinates = "lon_rho lat_rho s_rho ocean_time";
double s_rho(s_rho);
s_rho:long_name = "S-coordinate at RHO-points";
s_rho:positive = "up";
s_rho:standard_name = "ocean_s_coordinate_g1";
s_rho:formula_terms = "s:s_rho C:Cs_r eta:zeta depth:h
depth_c:hc"
(OGC WMS)
O servidor de dados que a comunidade pedia
.html
table, ESRI .asc
and .csv
, Google Earth .kml
, OPeNDAP binary, .mat
, .nc
, ODV .txt
, .csv
, .tsv
, .json
, and .xhtml
(CSW)
owslib.csw.CatalogueServiceWeb
owslib.fes
>>> from geolinks import sniff_link
>>> sniff_link("https://host/wms?service=SOS")
'OGC:SOS'
>>> sniff_link("https://host/wms?service=OPeNDAP:OPeNDAP")
'OPeNDAP:OPeNDAP'
>>> sniff_link("https://host/wms?service=WMS")
'OGC:WMS'
>>> sniff_link("https://host/data/roads.kmz")
'OGC:KML'
>>> sniff_link("https://host/data/roads.kml")
'OGC:KML'
Encontrando estações meteorológicas no caminho de previsão de um furacão.
Checando modelos de altura de ondas
Finalmente o notebook que prometi no título!