In [16]:
from pyciss import opusapi, io
# from pytest import tmpdir
opus = opusapi.OPUS()
In [12]:
img_id = 'N1875229393'
# img_id = 'N1695760475'
In [18]:
from pyciss.downloader import download_and_calibrate
In [20]:
download_and_calibrate(img_id)
In [14]:
opus.query_image_id(img_id)[0]
Out[14]:
In [15]:
opus.download_results(calib=True)
Out[15]:
In [17]:
io.PathManager(img_id)
Out[17]:
In [9]:
opus.obsids[0].small_img_url
Out[9]:
In [4]:
url = 'https://tools.pds-rings.seti.org/opus/#/target=S+Rings&instrument=Cassini+ISS&COISScamera=Narrow+Angle&RINGGEOprojectedradialresolution1=&RINGGEOprojectedradialresolution2=1&RINGGEOringradius1=75000&RINGGEOringradius2=92000&view=search&browse=gallery&colls_browse=gallery&page=1&gallery_data_viewer=true&limit=100&order=time1&cols=opusid,instrumentid,planet,target,time1,observationduration&widgets=RINGGEOringradius1,RINGGEOprojectedradialresolution1,COISScamera,instrument,planet,target&widgets2=&detail='
In [5]:
url.split('&')
Out[5]:
In [15]:
from pyciss.downloader import download_and_calibrate
In [16]:
img_id
Out[16]:
In [17]:
opus.obsids[0].img_id
Out[17]:
In [20]:
download_and_calibrate(img_id)
In [20]:
import requests
In [ ]:
In [16]:
opusapi.base_url
Out[16]:
In [11]:
type(opus.obsids[0])
Out[11]:
In [19]:
def test_download_results():
opus.download_results(savedir=tmpdir.name)
assert (Path(tmpdir.name) / 'N1695760475' / 'N1695760475_1.IMG').exists()
assert (Path(tmpdir.name) / 'N1695760475' / 'N1695760475_1.LBL').exists()
In [20]:
test_download_results()
In [4]:
# test_download_previews
opus.download_previews(savedir=tmpdir.name)
assert (Path(tmpdir.name) / 'N1695760475' / 'N1695760475_1_med.jpg').exists()
In [9]:
# test_get_metadata
meta = opus.get_metadata(opus.obsids[0])
assert meta.image['duration'] == 38.0
assert 'emission1' in meta.surface_geom
assert meta.general['declination1'] == 3.556135
assert meta.iss['GAIN_MODE_ID'] == '29 ELECTRONS PER DN'
In [10]:
# test_get_between_times_strings
opus.get_between_times('2005-10-10:00:00:00', '2005-10-11:00:00:00')
# this should find 7 items
assert len(opus.obsids) == 7
In [11]:
# test_get_between_times_datetimes
import datetime as dt
t1 = dt.datetime(2005, 10, 9)
t2 = dt.datetime(2005, 10, 10)
opus.get_between_times(t1, t2)
assert len(opus.obsids) == 12
In [12]:
# test_get_radial_res_query
d = opus.get_radial_res_query(0.1, 0.2)
assert isinstance(d, dict)
assert d['instrumentid'] == 'Cassini+ISS'
assert d['projectedradialresolution1'] == 0.1
assert d['projectedradialresolution2'] == 0.2
assert d['target'] == 'S+RINGS'
In [14]:
# test_get_between_resolutions
opus.get_between_resolutions(0.1,0.5)
# should find 89 items
assert len(opus.obsids) == 90
In [15]:
# cleanup
tmpdir.cleanup()