Description
openedon Aug 24, 2023
TDSCatalog is not constructing the access_url correctly when there is a base path.
from siphon.catalog import TDSCatalog
cat_url = "https://opendap1-test.nodc.no/opendap/hyrax/DSG/Physics/project/SmartOcean/Austevoll-Nord/catalog.xml"
cat = TDSCatalog(cat_url)
for cds in cat.datasets:
url = cat.datasets[cds].access_urls['dap']
print(f'url = {url}')
The result is
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202205.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202206.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202207.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202209.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202210.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202211.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202212.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202301.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202302.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202303.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202304.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202305.nc
url = https://opendap1-test.nodc.no/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202306.nc
but 'opendap/hyrax' is not in the path.
The correct path should be:
https://opendap1-test.nodc.no/opendap/hyrax/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202205.nc
... etc
In the catalog.xml this is given as base="/opendap/hyrax" for the dap service
<thredds:catalog xmlns:thredds="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:bes="http://xml.opendap.org/ns/bes/1.0#">
<thredds:service name="dap" serviceType="OPeNDAP" base="/opendap/hyrax"/>
<thredds:service name="file" serviceType="HTTPServer" base="/opendap/hyrax"/>
<thredds:service name="WCS-coads" serviceType="WCS" base="/opendap/wcs"/>
<thredds:dataset name="/DSG/Physics/project/SmartOcean/Austevoll-Nord" ID="/opendap/hyrax/DSG/Physics/project/SmartOcean/Austevoll-Nord/">
<thredds:dataset name="NMDC_AR_MO_Austevoll-Nord_202205.nc" ID="/opendap/hyrax/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202205.nc">
<thredds:dataSize units="bytes">1145638</thredds:dataSize>
<thredds:date type="modified">2023-06-23T09:28:13</thredds:date>
<thredds:access serviceName="dap" urlPath="/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202205.nc"/>
<thredds:access serviceName="file" urlPath="/DSG/Physics/project/SmartOcean/Austevoll-Nord/NMDC_AR_MO_Austevoll-Nord_202205.nc"/>
</thredds:dataset>
...
Python version : 3.8.8
Siphon version: 0.9