Skip to content

Instantly share code, notes, and snippets.

@welliam
Created February 16, 2023 18:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save welliam/0ca175ad65ed885c565952b28afd8b2c to your computer and use it in GitHub Desktop.
Save welliam/0ca175ad65ed885c565952b28afd8b2c to your computer and use it in GitHub Desktop.
Acroscyphus sphaerophoroides
Alectoria nigricans
Alectoria ochroleuca
Alectoria vancouverensis
Anaptychia setifera
Arctoparmelia incurva
Blennothallia fecunda
Bryoria bicolor
Bryoria tenuis
Bunodophoron melanocarpum
Cetrariella commixta
Cetrelia cetrarioides
Cladonia ciliata var. ciliata
Cladonia ciliata var. tenuis
Cladonia concinna
Cladonia novochlorophaea
Cladonia poroscypha
Cladonia portentosa ssp. pacifica
Cladonia prolifica
Collema curtisporum
Collema nigrescens
Dactylina arctica
Dactylina ramulosa
Dendriscocaulon intricatulum
Dermatocarpon meiophyllizum
Dermatocarpon moulinsii
Dermatocarpon polyphyllizum
Ephebe solida
Erioderma sorediatum
Evernia divaricata
Flavoparmelia caperata
Flavopunctelia flaventior
Fuscopannaria laceratula
Gabura insigne
Heterodermia japonica
Heterodermia leucomelos
Heterodermia sitchensis
Heterodermia speciosa
Hypogymnia duplicata
Hypogymnia heterophylla
Hypogymnia pulverata
Hypogymnia subphysodes
Hypogymnia vittata
Hypotrachyna afrorevoluta
Hypotrachyna riparia
Kaernefeltia californica
Lathagrium undulatum
Leioderma sorediatum
Leptogium compactum
Leptogium cyanescens
Leptogium pseudofurfuraceum
Leptogium umpquaense
Letharia gracilis
Lobaria linita
Lobaria retigera
Nephroma bellum
Nephroma isidiosum
Nephroma occultum
Niebla cephalota
Pannaria oregonensis
Parmotrema crinitum
Parmotrema perlatum
Peltigera cinnamomea
Peltigera gowardii
Peltigera hymenina
Peltula euploca
Peltigera pacifica
Phaeophyscia ciliata
Physcia semipinnata
Pilophorus nigricaulis
Pilophorus vegae
Platismatia lacunosa
Pseudocyphellaria hawaiiensis
Pseudocyphellaria mallota
Pseudocyphellaria rainierensis
Punctelia jeckeri
Ramalina intermedia
Ramalina labiosorediata
Ramalina subleptocarpha
Ramalina thrausta
Solorina saccata
Solorina spongiosa
Stereocaulon myriocarpum
Stereocaulon spathuliferum
Scytinium platynum
Scytinium plicatile
Scytinium rivale
Scytinium siskiyouensis
Scytinium teretiusculum
Scytinium quadrifidum
Sticta arctica
Sticta torii
Sticta wrightii
Sulcaria badia
Sulcaria spiralifera
Teloschistes flavicans
Tholurna dissimilis
Tuckermannopsis subalpina
Umbilicaria decussata
Umbilicaria hirsuta
Umbilicaria lambii
Umbilicaria lyngei
Umbilicaria nodulospora
Umbilicaria nylanderiana
Umbilicaria phaea var. coccinea
Umbilicaria proboscidea
Umbilicaria rigida
Umbilicaria scholanderi
Usnea ceratina
Usnea lambii
Usnea longissima
Usnea nidulans
Usnea rubicunda
Usnea subgracilis
Usnea quasirigida
Vulpicida tilesii
import csv
NAME_MAP = {
'Alectoria nigricans': ['Gowardia nigricans'],
'Fuscopannaria laceratula': ['Steineropsis laceratula'],
'Gabura insigne': ['Gabura insignis'],
'Pannaria oregonensis': ['Pannaria rubiginella', 'Pannaria rubiginosa'],
'Physcia semipinnata': ['Physcia leptalea'],
'Sticta wrightii': ['Dendriscosticta wrightii'],
'Tuckermannopsis subalpina': ['Tuckermanopsis subalpina'],
'Vulpicida tilesii': ['Vulpicida juniperinus'],
}
BC_WA_OR = '10,46,7085'
def get_listed_species():
listed = [name for name in open('listed.txt').read().split('\n') if name]
return [
name.replace(' var.', '').replace(' ssp.', '')
for name_list in [NAME_MAP.get(name, [name]) for name in listed]
for name in name_list
]
def get_taxa_id_map():
# download and extract taxa.csv from https://www.inaturalist.org/taxa/inaturalist-taxonomy.dwca.zip
taxa = list(csv.DictReader(open('taxa.csv')))
by_name = {t['scientificName']: t['id'] for t in taxa}
return by_name
def print_query():
listed_sanitized = get_listed_species()
by_name = get_taxa_id_map()
print('MISSING:\n', '\n'.join([name for name in listed_sanitized if name not in by_name]))
taxon_ids = ','.join([by_name[name] for name in listed_sanitized if name in by_name])
print(f'https://www.inaturalist.org/observations?place_id={BC_WA_OR}&taxon_ids={taxon_ids}')
if __name__ == '__main__':
print_query()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment