pyppeteer is not installed where your script runs. Run `python -m pip install pyppeteer`. On first run pyppeteer also downloads a Chromium build automatically, so expect a download the first time you call `launch()`.

## The error

```text
ModuleNotFoundError: No module named 'pyppeteer'
```

## Fix it

1. **Install pyppeteer**

```
python -m pip install pyppeteer
```
Expected: `Successfully installed pyppeteer-...`.

2. **Confirm the import**

```
python -c "import pyppeteer; print('ok')"
```
Expected: prints `ok`.

3. **If it still fails, check the interpreter split**

```
python --version
pip --version
```
Expected: matching paths. Redo step 1 with `python -m pip` if they differ.

## When this applies

- any pyppeteer import fails naming `pyppeteer`
- a fresh env following a tutorial that skipped the install step

## When it does NOT apply

- `No module named 'pyppeteer.launcher'; 'pyppeteer' is not a package` is the shadowing problem
- `cannot import name 'launch'` is the old-Python cascade failure

## Compatibility

pyppeteer 1.x/2.x. Note the project is in low maintenance; for new work many people choose playwright-python instead, but pyppeteer still works.

## Why it happens

The package was never installed into the active interpreter. pyppeteer automation scripts get copied between machines a lot, and the import is the first thing that notices the missing install.

## Edge cases

- First `launch()` downloads Chromium on demand. If you are offline at runtime, pre-warm it once while online.
- pyppeteer 2.x changed some APIs from 1.x. If old example code breaks after install, check which major version the example targeted.
