ขณะนี้ฉันพบข้อผิดพลาด 'ปฏิเสธการเข้าถึง' หลังจากใช้ rasterio เพื่อเปิดไฟล์รูปภาพ Sentinel-2 AWS .jp2 (ปัจจุบันโฮสต์โดย Sinergise และสามารถพบได้ที่นี่ )
รหัสของฉันมีลักษณะเช่นนี้:
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 หรือไม่แม้ว่าจะมีการให้รหัสลับและการเข้าถึงหรือไม่ ฉันควรเพิ่มด้วยว่าฟังก์ชั่นนี้ทำงานอย่างถูกต้องหากมี Landsat-8 url (เช่นhttp://landsat-pds.s3.amazonaws.com/L8/139/045/LC81390452014295LGN00/LC81390452014295LGN00_B1.TIF )
รุ่น (ติดตั้งผ่านแอนาคอนดา):
rasterio - 0.36.0
หลาม - 2.7
ขออภัยถ้าข้างต้นไม่ชัดเจน คำถามของฉันจะเป็น - เหตุใดจึงทำงานกับ Landsat-8 แต่ไม่ใช่ Sentinel-2 rasterio สามารถใช้เพื่อเปิดข้อมูล Sentinel-2 AWS ได้อย่างไร