Python Client for the iDigBio Search API
Project description
A python client for the idigbio v2 API
pip install idigbio
For documentation of the endpoint parameters go to: https://github.com/idigbio/idigbio-search-api/wiki
Two Forms
Returning JSON from the API.
import idigbio
api = idigbio.json()
json_output = api.search_records()
Returning a Pandas Data Frame from the JSON API.
import idigbio
api = idigbio.pandas()
pandas_output = api.search_records()
Examples
View a Record By UUID
import idigbio
api = idigbio.json()
record = api.view("records","1db58713-1c7f-4838-802d-be784e444c4a")
Search for a Record by scientific name
import idigbio
api = idigbio.json()
record_list = api.search_records(rq={"scientificname": "puma concolor"})
Search for Records that have images
import idigbio
api = idigbio.json()
record_list = api.search_records(rq={"scientificname": "puma concolor", "hasImage": True})
Search for a MediaRecords by record property
import idigbio
api = idigbio.json()
mediarecord_list = api.search_media(rq={"scientificname": "puma concolor", "hasImage": True})
Create a heat map for a genus
import idigbio
api = idigbio.json()
m = api.create_map(rq={"genus": "acer"}, t="geohash")
m.save_map_image("acer_map_geohash", 2)
Create a point map for a genus
import idigbio
api = idigbio.json()
m = api.create_map(rq={"genus": "acer"}, t="points")
m.save_map_image("acer_map_points", 2)
Create a zoomed in point map for a bounding box
import idigbio
api = idigbio.json()
bbox = {"type": "geo_bounding_box", "bottom_right": {"lat": 29.642979999999998, "lon": -82.00}, "top_left": {"lat": 29.66298, "lon": -82.35315800000001}}
m = api.create_map(
rq={"geopoint": bbox}
)
m.save_map_image("test.png", None, bbox=bbox)
Create a summary of kingdom and phylum data
import idigbio
api = idigbio.json()
summary_data = api.top_records(fields=["kingdom","phylum"])
Get the number of Records for a search by scientific name
import idigbio
api = idigbio.json()
count = api.count_records(rq={"scientificname": "puma concolor"})
Get the number of MediaRecords for a search by scientific name
import idigbio
api = idigbio.json()
count = api.count_media(rq={"scientificname": "puma concolor"})
Get the histogram of Collection Dates for a search by record property, for the last 10 years
import idigbio
api = idigbio.json()
histogram_data = api.datehist(rq={"scientificname": "puma concolor"},fields=["institutioncode"],minDate="2005-01-01")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.