ファイルがローカル ファイル システムにある場合、GDAL ライブラリを使用して、ラスター ファイルの形式に関する情報を正常に取得できます。
import gdal
from gdalconst import *
filename= "MOD11A1.A2012193.h11v11.005.2012196013534.hdf"
dataset = gdal.Open( filename, GA_ReadOnly )
print ( dataset.GetDriver().ShortName,dataset.GetDriver().LongName)
出力:
('HDF4', 'Hierarchical Data Format Release 4')
しかし、同じラスター ファイルでこれを試してみると、今回は ftp サーバー上にあり、エラーが発生します。
import gdal
from gdalconst import *
filename="ftp://ladsweb.nascom.nasa.gov/allData/5/MOD11A1/2012/193/MOD11A1.A2012193.h11v11.005.2012196013534.hdf"
dataset = gdal.Open( filename, GA_ReadOnly )
print ( dataset.GetDriver().ShortName,dataset.GetDriver().LongName)
エラーのある出力:
ERROR 4: `/vsimem/http_1/MOD11A1.A2012193.h11v11.005.2012196013534.hdf' not recognised as a supported file format.
('HDF4', 'Hierarchical Data Format Release 4')
どうしてこれなの?