मैं वर्तमान में सेंटिनल -2 AWS .jp2 छवि फ़ाइलों (वर्तमान में Sinergise द्वारा होस्ट किया गया है और यहां पाया जा सकता है ) को खोलने के लिए rasterio का उपयोग करने के बाद एक 'एक्सेस अस्वीकृत' त्रुटि का सामना कर रहा हूं ।
मेरा कोड इस तरह दिखता है:
import rasterio
access_key = '*****************'
secret_access_key = '***********************'
region_name = 'eu-central-1'
Session = rasterio.env.Env(aws_access_key_id=access_key,
aws_secret_access_key=secret_access_key,
region_name=region_name)
url = 's3://sentinel-pds/tiles/10/S/DG/2015/12/7/0/B01.jp2'
with Session:
with rasterio.open(url) as dataset:
print dataset
प्रतिक्रिया है:
---------------------------------------------------------------------------
CPLE_AWSAccessDenied Traceback (most recent call last)
<ipython-input-1-4f6da7274649> in <module>()
12
13 with Session:
---> 14 with rasterio.open(url) as dataset:
15 print dataset
/Users/Barney/anaconda/lib/python2.7/site-packages/rasterio/__init__.pyc in open(path, mode, driver, width, height, count, crs, transform, dtype, nodata, **kwargs)
191 raise ValueError(
192 "mode string must be one of 'r', 'r+', or 'w', not %s" % mode)
--> 193 s.start()
194 return s
195
rasterio/_base.pyx in rasterio._base.DatasetReader.start (rasterio/_base.c:2847)()
rasterio/_base.pyx in rasterio._base.DatasetReader.start (rasterio/_base.c:2799)()
rasterio/_err.pyx in rasterio._err.CPLErrors.check (rasterio/_err.c:1773)()
CPLE_AWSAccessDenied: Access Denied
मैं अनिश्चित हूँ अगर मैं rasterio aws के वातावरण का सही उपयोग कर रहा हूँ, क्या aws session टोकन कुंजी की आवश्यकता है भले ही गुप्त और पहुँच कुंजी प्रदान की गई हो? मुझे यह भी जोड़ना चाहिए कि यदि लैंडसैट -8 url (अर्थात http://landsat-pds.s3.amazonaws.com/L8/139/045/LC81390452014295LGNN00-LC81390452014295LGN00_B1.TIF ) के साथ यह फ़ंक्शन सही ढंग से काम करता है
संस्करण (एनाकोंडा के माध्यम से स्थापित):
रैस्टोरियो - 0.36.0
अजगर - 2.7
क्षमा करें यदि उपरोक्त अस्पष्ट है। मेरे सवाल होंगे - यह काम लैंडसैट -8 के लिए क्यों होता है लेकिन सेंटिनल -2 के लिए नहीं? सेंटिनल -2 एडब्ल्यूएस डेटा को खोलने के लिए रैस्टोरियो का उपयोग कैसे किया जा सकता है?