Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ItemSearch.items_as_collection #37

Merged
merged 3 commits into from
Apr 15, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

### Added

- `ItemSearch.items_as_collection` #37

### Fixed

### Changed
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ STAC API Client

[![CI](https://github.com/stac-utils/pystac-client/actions/workflows/continuous-integration.yml/badge.svg)](https://github.com/stac-utils/pystac-client/actions/workflows/continuous-integration.yml)
[![Release](https://github.com/stac-utils/pystac-client/actions/workflows/release.yml/badge.svg)](https://github.com/stac-utils/pystac-client/actions/workflows/release.yml)
[![PyPI version](https://badge.fury.io/py/pystac_client.svg)](https://badge.fury.io/py/pystac_client)
[![PyPI version](https://badge.fury.io/py/pystac-client.svg)](https://badge.fury.io/py/pystac-client)
[![Documentation](https://readthedocs.org/projects/pystac_client/badge/?version=latest)](https://pystac_client.readthedocs.io/en/latest/)
[![codecov](https://codecov.io/gh/stac-utils/pystac-client/branch/main/graph/badge.svg)](https://codecov.io/gh/stac-utils/pystac-client)

Expand Down Expand Up @@ -101,7 +101,7 @@ for item in mysearch.items():
Save all found items as a single FeatureCollection

```
items = list(mysearch.items())
items = mysearch.items_as_collection()
items.save('items.json')
```

Expand Down
9 changes: 9 additions & 0 deletions pystac_client/item_search.py
Original file line number Diff line number Diff line change
Expand Up @@ -397,3 +397,12 @@ def _paginate():
yield from it.islice(_paginate(), self._max_items)
else:
raise

def items_as_collection(self) -> ItemCollection:
"""Convenience method that builds an :class:`ItemCollection` from all items matching the given search parameters.

Returns
------
item_collection : ItemCollection
"""
return ItemCollection(self.items())
Original file line number Diff line number Diff line change
@@ -0,0 +1,253 @@
interactions:
- request:
body: '{"limit": 10, "bbox": [-73.21, 43.99, -73.12, 44.05], "collections": ["naip"]}'
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '78'
Content-Type:
- application/json
User-Agent:
- python-requests/2.25.1
method: POST
uri: https://eod-catalog-svc-prod.astraea.earth/search
response:
body:
string: !!binary |
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
AAAA//8DAFpcO/1dPAEA
headers:
Access-Control-Allow-Credentials:
- 'true'
Access-Control-Allow-Headers:
- X-Astraea-Catalog-Client
- Authorization, Content-Type, X-Requested-With
Access-Control-Allow-Origin:
- '*'
Cache-Control:
- no-cache, no-store, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/geo+json
Date:
- Wed, 14 Apr 2021 19:21:00 GMT
Server:
- akka-http/10.2.3
Transfer-Encoding:
- chunked
status:
code: 200
message: OK
- request:
body: '{"limit": 10, "bbox": [-73.21, 43.99, -73.12, 44.05], "collections": ["naip"],
"next": "1606767839786,m_4307307_ne_18_h_20160805,naip"}'
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '135'
Content-Type:
- application/json
User-Agent:
- python-requests/2.25.1
method: POST
uri: https://eod-catalog-svc-prod.astraea.earth/search
response:
body:
string: !!binary |
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
Xw2Hjb22Z4fVVqv//H8AAAD//wMAC0I0yrI7AQA=
headers:
Access-Control-Allow-Credentials:
- 'true'
Access-Control-Allow-Headers:
- X-Astraea-Catalog-Client
- Authorization, Content-Type, X-Requested-With
Access-Control-Allow-Origin:
- '*'
Cache-Control:
- no-cache, no-store, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/geo+json
Date:
- Wed, 14 Apr 2021 19:21:00 GMT
Server:
- akka-http/10.2.3
Transfer-Encoding:
- chunked
status:
code: 200
message: OK
version: 1
12 changes: 12 additions & 0 deletions tests/test_item_search.py
Original file line number Diff line number Diff line change
Expand Up @@ -306,3 +306,15 @@ def test_result_paging(self):

assert pages[1] != pages[2]
assert pages[1].features != pages[2].features

@pytest.mark.vcr
def test_items_as_collection(self):
search = ItemSearch(
url=SEARCH_URL,
bbox=(-73.21, 43.99, -73.12, 44.05),
collections='naip',
limit=10,
max_items=20,
)
item_collection = search.items_as_collection()
assert len(item_collection.features) == 20