Comments (8)
@lewismc can I help on this improvement? Thanks
from podaacpy.
from podaacpy.
Hi @lewismc I have started working on the above. I just want to let you know the sub routine names:
subroutine1: get_dataset_list()
subroutine2: get_dataset_stats()
subroutine3: not sure what would be the appropriate sub routine name, open to suggestions.
subroutines = no.of end points.
Thanks.
from podaacpy.
Hi @fgreg can you list what you envisage a Python APi to look like for OceanWorks? I will deal with MUDROD, thank you for any input I really appreciate it.
from podaacpy.
We have the start of a python client for NEXUS here: https://github.com/apache/incubator-sdap-nexus/tree/master/client
NEXUS is the service responsible for serving the endpoints currently described on https://oceanworks.jpl.nasa.gov/
So I'm not sure that you want to re-implement these things on your own or maybe just include the nexuscli as a dependency to this project?
nexuscli is still under development as well and it doesn't have all of the endpoints covered yet either, so if you want to contribute that would be appropriate.
from podaacpy.
Hi @fgreg thank you,
...or maybe just include the nexuscli as a dependency to this project?
That's exactly what I want to do.
nexuscli is still under development as well and it doesn't have all of the endpoints covered yet either, so if you want to contribute that would be appropriate.
Is there an open JIRA issue for adding then endpoints ? Thanks
from podaacpy.
@lewismc No they haven't been opened yet. Here's one recently done by Nga though that could be used as an example: https://issues.apache.org/jira/projects/SDAP/issues/SDAP-47
from podaacpy.
I messed around a bit and found that this was much easier than I expected
from nexuscli import nexuscli
nexuscli.set_target("http://oceanworks.jpl.nasa.gov/")
...Target set to http://oceanworks.jpl.nasa.gov/
nexuscli.dataset_list()
[OrderedDict([('shortName', 'AQUARIUS_L3_SSS_v5_7day'), ('start', '1970-01-16T05:05:16Z'), ('end', '1970-01-17T14:05:16Z')]), OrderedDict([('shortName', 'ASCATB-L2-Coastal'), ('start', '1970-01-16T15:24:32Z'), ('end', '1970-01-18T11:13:27Z')]), OrderedDict([('shortName', 'AVHRR_OI_L4_GHRSST_NCEI'), ('start', '1970-01-05T06:15:50Z'), ('end', '1970-01-18T22:13:26Z')]), OrderedDict([('shortName', 'CCMP_V2.0_L3.0_WIND_SPEED'), ('start', '1970-01-07T09:34:33Z'), ('end', '1970-01-18T12:44:16Z')]), OrderedDict([('shortName', 'CCMP_V2.0_L3.0_WIND_SPEED_CLIM'), ('start', '1970-01-01T00:00:00Z'), ('end', '1970-01-01T00:00:00Z')]), OrderedDict([('shortName', 'G5NR_TOTEXTTAU_500'), ('start', '1970-01-14T09:24:28Z'), ('end', '1970-01-14T09:44:36Z')]), OrderedDict([('shortName', 'GPM_3IMERGHHE'), ('start', '1970-01-17T03:23:02Z'), ('end', '1970-01-18T21:30:56Z')]), OrderedDict([('shortName', 'MODIS_L3_sst_4km'), ('start', '1970-01-12T20:55:37Z'), ('end', '1970-01-18T22:13:26Z')]), OrderedDict([('shortName', 'MODIS_L3m_DAY_CHL_chlor_a_4km'), ('start', '1970-01-12T20:55:39Z'), ('end', '1970-01-18T22:25:00Z')]), OrderedDict([('shortName', 'MUR25-JPL-L4-GLOB-v4.1'), ('start', '1970-01-12T20:08:42Z'), ('end', '1970-01-18T21:30:46Z')]), OrderedDict([('shortName', 'MUR25-JPL-L4-GLOB-v4.1-CLIM'), ('start', '1970-01-01T00:00:00Z'), ('end', '1970-01-01T00:00:00Z')]), OrderedDict([('shortName', 'OSCAR_L4_OC'), ('start', '1970-01-09T07:54:57Z'), ('end', '1970-01-18T21:24:22Z')]), OrderedDict([('shortName', 'RAPID_WSWM'), ('start', '1970-01-10T20:41:38Z'), ('end', '1970-01-11T14:11:13Z')]), OrderedDict([('shortName', 'SMAP_L2B_SSS'), ('start', '1970-01-17T12:36:59Z'), ('end', '1970-01-18T01:19:10Z')]), OrderedDict([('shortName', 'SMAP_SSS_L3_MONTHLY_500'), ('start', '1970-01-17T12:59:02Z'), ('end', '1970-01-18T15:17:16Z')]), OrderedDict([('shortName', 'SMAP_SSS_L3_MONTHLY_500_CLIM'), ('start', '1970-01-01T00:00:00Z'), ('end', '1970-01-01T00:00:00Z')]), OrderedDict([('shortName', 'SMAP_SSS_L3_v3_8day_70km'), ('start', '1970-01-17T12:36:43Z'), ('end', '1970-01-18T22:04:04Z')]), OrderedDict([('shortName', 'SMAP_SSS_L3_v3_monthly_70km'), ('start', '1970-01-17T12:59:02Z'), ('end', '1970-01-18T21:09:21Z')]), OrderedDict([('shortName', 'TELLUS_GRACE_MASCON_CRI_GRID_RL06_V1_LAND'), ('start', '1970-01-12T18:40:19Z'), ('end', '1970-01-18T07:37:55Z')]), OrderedDict([('shortName', 'TELLUS_GRACE_MASCON_CRI_GRID_RL06_V1_OCEAN'), ('start', '1970-01-12T18:40:19Z'), ('end', '1970-01-18T07:37:55Z')]), OrderedDict([('shortName', 'TRMM_3B42_daily'), ('start', '1970-01-11T05:26:47Z'), ('end', '1970-01-17T19:11:54Z')]), OrderedDict([('shortName', 'TRMM_3B42_daily_CLIM'), ('start', '1970-01-01T00:00:00Z'), ('end', '1970-01-01T00:00:00Z')])]
As nexuscli has not been released as of yet it means that it cannot be used directly as a dependency however I am going to clone it and then simply add it to setup.py as described here. We can then build out the nexus interaction directly here within Podaacpy
from podaacpy.
Related Issues (20)
- Add API's for PO.DAAC Drive HOT 1
- Update release management policy to use twine HOT 6
- Python 2.6 master build failing HOT 2
- Implement Level3 and Level4 subsetting logic HOT 14
- Maintain directory structure when downloading from PODAAC Drive
- Augment Drive.download_granules with 'root' parameter HOT 1
- Function "mine_drive_urls_from_granule_search()" Returns Empty List HOT 3
- Refactor for the deprecation of FTP? HOT 10
- Question about granule_search() from web services API HOT 4
- Replace xml.etree.ElementTree.fromstring functions with their defusedxml equivalents. HOT 3
- Implement integration tests for drive.py HOT 2
- Accessing CYGNSS L0 data with podaacpy HOT 9
- Add support for Remote Sensing Systems (RSS) HTTP data access HOT 1
- Add PodaacUtils.mine_drive_urls_from_granule_search function
- drive.Drive(file) attempts to read from erroneous 'tests' directory
- Change root branch from master to main HOT 1
- PodaacUtils().list_all_available_extract_granule_dataset_ids() returns None HOT 1
- Port to Rust and Expose Crate and FFI Python Module HOT 3
- Working with proxy HOT 2
- Error in the example file "Using Podaacpy to retrieve CYGNSS Level 3 Science Data.ipynb" HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from podaacpy.