cli-web-pexels
Search and download Pexels stock photos and videos (no auth, Cloudflare bypass built in).
Install: pip install cli-web-pexels
Commands
| Command | Purpose | Key options |
|---|---|---|
photos search QUERY | Search photos | --orientation landscape|portrait|square, --size large|medium|small, --color HEX_OR_NAME, --page N |
photos get SLUG | Photo details (image URLs, EXIF, location) | slug or numeric ID |
photos download SLUG | Download a photo (JPEG) | --size small|medium|large|original, -o/--output PATH |
videos search QUERY | Search videos | --orientation, --page N |
videos get SLUG | Video details (video_files[] with quality/fps/link) | slug or numeric ID |
videos download SLUG | Download a video (MP4) | --quality sd|hd|uhd (default hd), -o/--output PATH |
users get USERNAME | Photographer profile | |
users media USERNAME | A user's uploaded photos/videos | --page N |
collections get SLUG | Collection detail + media | --page N |
collections discover | Popular and curated collections |
Examples
# Landscape nature photos; grab the first download URL
cli-web-pexels photos search "mountain lake" --orientation landscape --json | jq '.data[0].download_url'
# Photo details by slug (slug comes from search results)
cli-web-pexels photos get green-leaves-1072179 --json
# Download original size to a path
cli-web-pexels photos download green-leaves-1072179 --size original -o leaves.jpg
# Search videos and inspect HD renditions
cli-web-pexels videos get long-narrow-road-856479 --json | jq '.video_files[] | select(.quality=="hd")'
# Photographer profile
cli-web-pexels users get catiamatos --json
JSON output
Read commands accept --json and return the data directly — search returns {"data": [{id, title, slug, photographer, image_url, download_url, ...}]}, get returns the photo/video object. Errors return {"error": true, "code": "...", "message": "..."}. Download commands write the file and print the path (no --json flag).
Utilities
cli-web-pexels doctor [--json] self-diagnoses the local setup (install, auth, dependencies). cli-web-pexels mcp-serve serves the commands as MCP tools over stdio.
Agent tips
- Pagination is
--page N(24 results per page) on search/list commands. - Slugs from search results (e.g.
green-leaves-1072179) work everywhere a SLUG argument is expected; bare numeric IDs also work.