2

我从 Python中的 Landsat-8 数据产品的自动批量下载中实现了 Python 代码 | 地质学和 Python教程。

它工作得很好,但我想根据日期检索数据。我什至更改了一些代码并尝试但没有成功。

bulk_list = []

# Iterate through paths and rows
for path, row in zip(paths, rows):

print('Path:',path, 'Row:', row)

# Filter the Landsat Amazon S3 table for images matching path, row, cloudcover and processing state.
scenes = s3_scenes[(s3_scenes.path == path) & (s3_scenes.row == row) & 
                   (s3_scenes.cloudCover <= 15) & 
                   (s3_scenes.acquisitionDate='2019-04-22')
                   (~s3_scenes.productId.str.contains('_T2')) &
                   (~s3_scenes.productId.str.contains('_RT'))]
print(' Found {} images\n'.format(len(scenes)))

# If any scenes exists, select the one that have the minimum cloudCover.
if len(scenes):
    scene = scenes.sort_values('acquisitionDate').iloc[0]

# Add the selected scene to the bulk download list.
bulk_list.append(scene)

但它会引发错误:

File "<ipython-input-37-ec27c752ae7e>", line 11
(s3_scenes.acquisitionDate='2019-04-22')
                              ^
SyntaxError: invalid syntax

我了解日期格式存在问题,但无法解决。

还请向我推荐一些关于 AWS on Landsat 8 图像的好教程。

当我打印批量列表 bulk_list [productId LC08_L1TP_152042_20190422_20190507_01_T1 entityId LC81520422019112LGN00 acquisitionDate 2019-04-22 05:56:08.442691 cloudCover 0 processingLevel L1TP path 152 row 42 min_lat 24.9171 min_lon 66.742 max_lat 27.0339 max_lon 69.0604 download_url https://s3-us-west-2.amazonaws.com/landsat-pds... Name: 1520154, dtype: object]

即使在我使用(s3_scenes.acquisitionDate='2019-04-22 05:56:08.442691')结果之后仍然保持不变

4

1 回答 1

1

我认为日期格式应该是YYYYMMDD

欲了解更多信息,请参阅亚马逊

或简单地使用s3_scenes.productId.str.contains('20190422')

你忘&了在语句的结尾

于 2019-05-09T07:07:01.797 回答