Skip to main content

CLI for Anakin.io web scraping, search, and research API

Project description

Anakin CLI

PyPI version Python License: MIT

Command-line interface for Anakin.io's web scraping, search, and research API.

Requirements

Install

pip install anakin-cli

Quick Start

# Authenticate
anakin login --api-key "ak-your-key-here"

# Verify
anakin status

# Search the web
anakin search "python async best practices"

# Scrape a page to markdown
anakin scrape "https://example.com" -o page.md

# Extract structured data (AI-powered)
anakin scrape "https://example.com/product" --format json -o product.json

# Batch scrape multiple URLs
anakin scrape-batch "https://a.com" "https://b.com" -o batch.json

# Deep research (1-5 minutes)
anakin research "comparison of web frameworks 2025" -o report.json

Self-Hosted Mode

Use anakin-cli with a self-hosted AnakinScraper OSS instance:

# Start the OSS server
git clone https://github.com/AnakinAI/anakinscraper-oss.git && cd anakinscraper-oss && make up

# Scrape via your local instance (no API key needed)
anakin scrape "https://example.com" --api-url http://localhost:8080

# Or set it as your default
export ANAKIN_API_URL="http://localhost:8080"
anakin scrape "https://example.com"

Self-hosted mode supports scrape and scrape-batch. For search and research, use the hosted API with an API key.

Commands

Command Description
search AI-powered web search (instant)
scrape Scrape a single URL — markdown, JSON, or raw
scrape-batch Scrape up to 10 URLs at once
research Deep agentic research (1-5 min)
login Save your API key
status Check version and auth status

Scrape Formats

The scrape command supports three output formats via --format:

# Default — clean page text
anakin scrape "https://example.com"

# AI-extracted structured data
anakin scrape "https://example.com/product" --format json -o data.json

# Full API response (for debugging)
anakin scrape "https://example.com" --format raw -o debug.json
Format What you get Size
markdown (default) Clean readable page text Small
json AI-extracted structured data only Small
raw Full API response (html, metadata, everything) Large

Other scrape options

--browser          # Use headless browser (for JS-heavy sites)
--country CC       # Country code (default: us)
--session-id ID    # Session ID for authenticated scraping
--timeout SECS     # Polling timeout in seconds (default: 120)
-o, --output FILE  # Save output to file

Authentication

Get your API key at anakin.io/dashboard.

Option A — Login command (recommended):

anakin login --api-key "ak-your-key-here"

Option B — Environment variable:

export ANAKIN_API_KEY="ak-your-key-here"

If no key is configured, the CLI will prompt you to enter one interactively.

Error Handling

The CLI provides clear error messages for common issues:

Error Cause Fix
Authentication failed (401) Invalid or missing API key Run anakin login --api-key "ak-xxx"
Plan upgrade required (402) Feature not available on your plan Visit anakin.io/pricing
Rate limit exceeded (429) Too many requests Wait a few seconds and retry
Job did not complete within Xs Scrape/research timed out Increase with --timeout 300
Job failed Server could not process the URL Check if the URL is accessible

All errors exit with code 1. Success exits with code 0.

Tips

  • Always quote URLs that contain ?, &, or # — shells like zsh interpret these as special characters:
    # Wrong — zsh will fail with "no matches found"
    anakin scrape https://example.com/page?id=123
    
    # Correct
    anakin scrape "https://example.com/page?id=123"
    
  • Use --browser for JavaScript-heavy sites (SPAs, dynamic content).
  • Use -o to save output to a file. Without it, output goes to stdout.
  • All progress/status messages go to stderr, so piping works cleanly:
    anakin scrape "https://example.com" | jq '.title'
    

Documentation

Support

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anakin_cli-0.2.0.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anakin_cli-0.2.0-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file anakin_cli-0.2.0.tar.gz.

File metadata

  • Download URL: anakin_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for anakin_cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 67709a79d5930757779da0d5dc91c9ca0ab70666a9952ddaf3dbdd0f5035b6e3
MD5 f334e191288e1ddf790c33e93da26b6a
BLAKE2b-256 37c346253bb48484d952da184398b0af45676f373516f253019890d52d6c2e2a

See more details on using hashes here.

File details

Details for the file anakin_cli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: anakin_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for anakin_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4b0ea8d3aafcb0afa261f523a89aacaa8f8bdb0a230342d2d45c036253e1915f
MD5 8bab09586b6e86c3660725489f1675af
BLAKE2b-256 4893a36ed41662e4b759273b1f33ea3e92a539ee5000cc869cb0c7967b02be46

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page