import pandas as pd
import folium
from datetime import datetime, timedelta
from pyinaturalist import (
Observation,
get_observations,
pprint,
)
import ipyplot
from itertools import compressFotos de Junio 2025
Python
pyinaturalist
NSW
Organizar fotos de Junio 2025
Importamos los módulos necesarios:
Descargar observaciones de iNaturalist
Todo de todo el mes de Junio de 2025
observations = get_observations(user_id='NeoMapas',
d1="2025-06-01",
d2="2025-06-30",
per_page=1000)len(observations['results'])26
records=list()
for obs in observations['results']:
record = {'quality': obs['quality_grade'],
'description': obs['description'],
'location': obs['place_guess'],
'longitude': obs['location'][1],
'latitude': obs['location'][0],
'species guess': obs['species_guess'],
'Fecha': obs['observed_on'],
}
if len(obs['observation_photos'])>0:
record['url'] = obs['observation_photos'][0]['photo']['url']
record['attribution'] = obs['observation_photos'][0]['photo']['attribution']
records.append(record)inat_obs=pd.DataFrame(records)inat_obs["dia"]=inat_obs.Fecha.apply(datetime.date)inat_obs.groupby('dia').agg({'species guess': ['count',pd.Series.nunique]})| species guess | ||
|---|---|---|
| count | nunique | |
| dia | ||
| 2025-06-01 | 9 | 9 |
| 2025-06-02 | 9 | 9 |
| 2025-06-03 | 1 | 1 |
| 2025-06-08 | 3 | 2 |
| 2025-06-09 | 1 | 1 |
| 2025-06-22 | 3 | 3 |
my_observations = Observation.from_json_list(observations)pprint(my_observations)ID Taxon ID Taxon Observed on User Location ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 300383266 244196 Appias paulina (Yellow Jun 22, 2025 neomapas Brisbane QLD, Australia Albatross) 300379608 349102 Argiope ocyaloides Jun 22, 2025 neomapas Brisbane QLD, Australia (Bark-Hugging Saint Andrew's Cross Spider) 300379162 287170 Passiflora pallida (Corkystem Jun 22, 2025 neomapas Brisbane QLD, Australia Passionvine) 295679814 824394 Genus Helinomydaea Jun 08, 2025 neomapas Sydney NSW, Australia 289115549 14850 Sturnus vulgaris (European Jun 09, 2025 neomapas Clovelly, NSW, AU Starling) 287845115 42888 Macropus giganteus (Eastern Jun 08, 2025 neomapas Sydney NSW, Australia Grey Kangaroo) 287845113 42888 Macropus giganteus (Eastern Jun 08, 2025 neomapas Sydney NSW, Australia Grey Kangaroo) 287549332 47574 Genus Juniperus (Junipers) Jun 01, 2025 neomapas Varzob District, Tajikistan 287549331 133251 Genus Tettigonia Jun 01, 2025 neomapas Varzob District, Tajikistan 287549326 87231 Genus Cardiophorus Jun 01, 2025 neomapas Varzob District, Tajikistan 287547296 57485 Parnassius mnemosyne (Clouded Jun 01, 2025 neomapas Varzob District, Tajikistan Apollo) 287545982 1473092 Oreomecon crocea (Ice Poppy) Jun 01, 2025 neomapas Safed dara, Tajikistan 287544798 889089 Bos grunniens (Domestic Yak) Jun 01, 2025 neomapas Vahdat District, Tajikistan 287543675 53196 Genus Rumex (Docks And Sorrels) Jun 01, 2025 neomapas Vahdat District, Tajikistan 287488662 61295 Aporia crataegi (Black-Veined Jun 01, 2025 neomapas Varzob District, Tajikistan White) 287488128 70355 Genus Eurydema (Cabbage Bugs, Jun 01, 2025 neomapas Varzob District, Tajikistan Caper Bugs And Allies) 287477444 11901 Hirundo rustica (Barn Swallow) Jun 02, 2025 neomapas Jilikul, Tajikistan 287476151 47126 Kingdom Plantae (Plants) Jun 02, 2025 neomapas Jilikul, Tajikistan 287475317 5173 Circus aeruginosus (Western Jun 02, 2025 neomapas Qabodiyon, Tajikistan Marsh Harrier) 287473587 49358 Family Myrmeleontidae (Antlions Jun 02, 2025 neomapas Jilikul, Tajikistan And Owlflies) 287471508 125833 Tribe Polyommatini (Typical Jun 02, 2025 neomapas Jilikul, Tajikistan Blues) 287465444 112442 Selysiothemis nigra (Black Jun 02, 2025 neomapas Jilikul, Tajikistan Pennant) 287464484 53905 Mantis religiosa (European Jun 02, 2025 neomapas Jilikul, Khatlon, Tajikistan Mantis) 287462513 1545769 Varanus caspius (Caspian Jun 03, 2025 neomapas Jilikul, Tajikistan Monitor) 287448693 42134 Sus scrofa (Wild Boar) Jun 02, 2025 neomapas Qabodiyon, Tajikistan 287433091 6638 Apus apus (Common Swift) Jun 02, 2025 neomapas Dushanbe, Tajikistan
images = [obs.photos[0].small_url for obs in my_observations]
labels = [str(obs) for obs in my_observations]Mt Gravatt, Brisbane, QLD
ss = [datetime.date(obs.observed_on).strftime('%Y-%m-%d') in ['2025-06-22'] for obs in my_observations]
ipyplot.plot_images(list(compress(images, ss)), list(compress(labels, ss)), max_images=60,)Sydney, NSW
ss = [datetime.date(obs.observed_on).strftime('%Y-%m-%d') in ['2025-06-09'] for obs in my_observations]
ipyplot.plot_images(list(compress(images, ss)), list(compress(labels, ss)), max_images=60,)Australian Botanical Garden, NSW
ss = [datetime.date(obs.observed_on).strftime('%Y-%m-%d') in ['2025-06-08'] for obs in my_observations]
ipyplot.plot_images(list(compress(images, ss)), list(compress(labels, ss)), max_images=60,)Siyoma Gorge, Tajikistan
ss = [datetime.date(obs.observed_on).strftime('%Y-%m-%d') in ['2025-06-01'] for obs in my_observations]
ipyplot.plot_images(list(compress(images, ss)), list(compress(labels, ss)), max_images=60,)Paseo a Tigrovaya Balka, Tajikistan
ss = [datetime.date(obs.observed_on).strftime('%Y-%m-%d') in ['2025-06-02','2025-06-03'] for obs in my_observations]
ipyplot.plot_images(list(compress(images, ss)), list(compress(labels, ss)), max_images=60,)Session information
import session_info
session_info.show()--------------------------------------------------------------------------- KeyError Traceback (most recent call last) Cell In[17], line 2 1 import session_info ----> 2 session_info.show() File ~/proyectos/CES/code-4-iNat/.venv/lib/python3.12/site-packages/session_info/main.py:209, in show(na, os, cpu, jupyter, dependencies, std_lib, private, write_req_file, req_file_name, html, excludes) 207 for mod_name in clean_modules: 208 mod_names.append(mod_name) --> 209 mod = sys.modules[mod_name] 210 # Since modules use different attribute names to store version info, 211 # try the most common ones. 212 try: KeyError: 'IPyPlot'