Skip to main content

Python client library for SpiderFoot API

Project description

SpiderFoot Client

A Python client library and command-line interface for the SpiderFoot OSINT automation tool API.

Installation

pip install spiderfoot-client

Library Usage

from spiderfoot_client import SpiderFootClient

# Initialize client
client = SpiderFootClient(
    base_url="http://localhost:5001",
    username="admin", 
    password="your_password"
)

# Start a scan
result = client.start_scan(
    target="example.com",
    scan_name="My Scan",
    use_case="passive"
)
scan_id = result['id']

# Monitor scan progress
status = client.get_scan_status(scan_id)
print(f"Scan status: {status['status']}")

# Wait for completion
final_status = client.wait_for_completion(scan_id)

# Get results
results = client.get_scan_results(scan_id)

Command Line Usage

Set environment variables:

export SPIDERFOOT_URL="http://localhost:5001"
export SPIDERFOOT_USERNAME="admin"
export SPIDERFOOT_PASSWORD="your_password"

Commands:

# Test connectivity
spiderfoot-client ping

# Start a scan
spiderfoot-client start example.com "My Scan" --usecase passive

# List all scans
spiderfoot-client list

# Get scan status
spiderfoot-client status SCAN_ID

# Get scan results
spiderfoot-client results SCAN_ID

# Stop a scan
spiderfoot-client stop SCAN_ID

# Delete a scan
spiderfoot-client delete SCAN_ID

# Export results
spiderfoot-client export SCAN_ID --format json

# Wait for scan completion
spiderfoot-client wait SCAN_ID

# Get available modules
spiderfoot-client modules

# Search results
spiderfoot-client search "query" --scan-id SCAN_ID

Configuration

The client can be configured using environment variables:

  • SPIDERFOOT_URL: SpiderFoot server URL (default: http://localhost:5001)
  • SPIDERFOOT_USERNAME: Username for authentication (default: admin)
  • SPIDERFOOT_PASSWORD: Password for authentication (required)

Requirements

  • Python 3.8+
  • requests>=2.31.0

License

MIT License

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

spiderfoot_client-1.0.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

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

spiderfoot_client-1.0.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file spiderfoot_client-1.0.0.tar.gz.

File metadata

  • Download URL: spiderfoot_client-1.0.0.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for spiderfoot_client-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7e780f3d6a449d9c8d52b79bf00b54018e159f7bb976473ceb9fa472c1f2658a
MD5 d07f394c9a93ce167b037c09041c9deb
BLAKE2b-256 5915151452fcc928ce2c05c712cafae31ea37f14c96dbf0a9377c30bc8865ed5

See more details on using hashes here.

File details

Details for the file spiderfoot_client-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for spiderfoot_client-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fe6a044f3a56805abf71fae366d89a7b61bef5936cce43d25862b25edd656deb
MD5 aa60b1391569e2766aadf48d3e565d71
BLAKE2b-256 b8c2547ae46945e7265dd039ebfabad5635bea76152eb350d3775487274e04fc

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