iNaturalist Import v2.0.0 - A QGIS Plugin for Field Naturalists

O I C !!! Thank you De Waal!

In the QGIS Python console, type these lines :

import pyinaturalist
from pyinaturalist import get_taxa

response = get_taxa(q=‘vespi’, rank=[‘genus’, ‘family’])
print(response[‘results’][0][‘name’])
  • If you get a taxon name (or at least a list of results), the pyinaturalist is well installed and the API is answered.

  • If you have a “ModuleNotFoundError” error, there is NOT a good Python environment or the installation is happening.

So, is everything OK for you now ?

I think so, yes. Thank you!

thanks, I did get “ModuleNotFoundError” so I guess I can’t use the plugin. Thanks for your help

This shows that pyinaturalist is NOT installed.

I don’t own a Mac, so I can’t run any tests. I’ve researched with Claude AI, and I’m providing you with the full text of the response. Unfortunately, I can’t do anything more. Keep me updated.


Installing pyinaturalist for the iNaturalist Import QGIS Plugin on macOS

Why it’s not straightforward on Mac

QGIS on macOS bundles its own Python interpreter, isolated from the system Python or any Homebrew/Conda environment. Installing packages with a regular pip in the Terminal will not make them available inside QGIS. You must install into the QGIS Python environment specifically.


Step 1 — Identify your QGIS Python executable

Open a Terminal and run:

bash

ls /Applications/QGIS.app/Contents/MacOS/bin/python3

If QGIS was installed from the official QGIS installer, the Python binary is at that path. If you installed via KyngChaos or Homebrew, the path may differ — see the note at the bottom.


Step 2 — Install pyinaturalist using QGIS’s own pip

In the Terminal, run the following command (copy-paste it entirely):

bash

/Applications/QGIS.app/Contents/MacOS/bin/pip3 install pyinaturalist

You should see pip downloading and installing the package along with its dependencies. Wait for it to complete — the final line should say Successfully installed pyinaturalist-x.x.x.


Step 3 — Verify the installation from within QGIS

Open QGIS, then go to Plugins → Python Console and type:

python

import pyinaturalist
print(pyinaturalist.__version__)

If a version number is printed without any error, the installation was successful.


Step 4 — Install (or reinstall) the iNaturalist Import plugin

If the plugin was already installed before pyinaturalist was available, go to Plugins → Manage and Install Plugins, find iNaturalist Import, and click Reinstall or simply close/reopen QGIS. The plugin should now load without errors.


Troubleshooting

pip3 command not found at that path Check whether QGIS ships pip by running:

bash

/Applications/QGIS.app/Contents/MacOS/bin/python3 -m pip --version

If that works, replace pip3 with python3 -m pip in Step 2:

bash

/Applications/QGIS.app/Contents/MacOS/bin/python3 -m pip install pyinaturalist

Permission denied error Add the --user flag:

bash

/Applications/QGIS.app/Contents/MacOS/bin/pip3 install --user pyinaturalist

Installed via KyngChaos The Python path is typically:

bash

/Library/Frameworks/GDAL.framework/Versions/Current/Programs/pip3

Installed via Homebrew

bash

$(brew --prefix qgis)/bin/python3 -m pip install pyinaturalist

Still getting an import error inside QGIS after successful install Open the QGIS Python Console and check which Python QGIS is actually using:

python

import sys
print(sys.executable)
print(sys.path)

Then re-run the pip install using that exact executable path.


Alternative: install from within QGIS Python Console

As a last resort, you can install directly from the QGIS Python Console itself:

python

import subprocess, sys
subprocess.check_call([sys.executable, "-m", "pip", "install", "pyinaturalist"])

This guarantees you are using the exact Python environment QGIS is running on.