Onionsearch

1.3

OnionSearch is a script that scrapes urls on different.

  • Verified 24 Sept 2026
  • pip 1.3
  • GPL-3.0
  • 1.8k stars

Install and run

  1. otlite install onionsearch

    Installs onionsearch==1.3 into its own virtualenv. otlite lists what it will install and asks before it starts.

  2. otlite run onionsearch -- q:example

    onionsearch receives onionsearch example

No otlite yet? Install it in one line
curl -fsSL https://get.otinstaller.com/otlite | sh

Linux and macOS, no Docker. It uses your Python and pipx when both are there, and otherwise brings its own Python. About otlite · otlite docs

What it takes

Typed inputs after -- become Onionsearch's own arguments. Anything else after -- passes through unchanged, so every option of the tool still works.

InputWith otliteonionsearch receives
Search termq:otlite run onionsearch -- q:exampleonionsearch example

What a run leaves

Every run is saved under results/ where you run otlite (or --output, or OTLITE_RESULTS_DIR): what the tool printed, a sidecar with how it ran, and an envelope.

  • results/onionsearch/example/<time>_onionsearch_example_<run id>.txt
  • results/onionsearch/example/<time>_onionsearch_example_<run id>.meta.json
  • results/onionsearch/example/<time>_onionsearch_example_<run id>.envelope.json
{
  "envelope": 1,
  "tool": "onionsearch@1.3",
  "runtime": "otlite",
  "input": { "target": "example" },
  "case": null,
  "started_at": "…", "ended_at": "…", "duration_ms": …,
  "exit_code": 0,
  "status": "complete",
  "entities": [{ "type": "url", "value": "…" }, …],
  "warnings": [],
  "output": { "path": "results/onionsearch/example/<time>_onionsearch_example_<run id>.txt", "sha256": "…", "bytes": … }
}
The envelope's shape, the same for every tool; values elided. Its entities are the emails, domains, IP addresses and URLs found in the output, or the tool's own when it prints them.
otlite results --tool onionsearch
otlite extract onionsearch
otlite diff onionsearch example

List the saved runs, pull out every indicator, or compare the two latest runs against the same target.

With other tools

Batch runs can't pass it a value, so run it on its own.

Related tools

All 47 tools →
Esc

Try

↑ ↓ to move↵ to open