sociopath

module
v0.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2025 License: Apache-2.0

README

sociopath

Go Reference Go Report Card

A Go library and CLI that fetches, spiders, and guesses social media profiles across 18+ platforms.

Install

go install github.com/codeGROOVE-dev/sociopath/cmd/sociopath@latest

Usage

sociopath https://github.com/torvalds              # Fetch single profile
sociopath -r https://linktr.ee/johndoe             # Follow all social links
sociopath --guess https://github.com/johndoe       # Discover profiles by username
Recursive Mode (-r)

Follows social links found in profiles up to 3 levels deep.

Guess Mode (--guess)

Probes other platforms using discovered usernames. Each guess includes a confidence score based on username match, name similarity, location, bio keywords, and cross-links.

Platforms

No Auth Required Auth Required (browser cookies)
GitHub, Mastodon, BlueSky, Codeberg LinkedIn, Twitter/X
Dev.to, StackOverflow, Linktree Instagram, TikTok, VKontakte
Medium, Reddit, YouTube, Substack
Bilibili, Habr, Generic websites

Options

-r, --recursive   Follow social links recursively (max depth: 3)
--guess           Discover related profiles on other platforms
--no-browser      Disable automatic browser cookie extraction
--no-cache        Disable HTTP caching (default: 75-day TTL)
-v, --debug       Enable verbose logging

Output

JSON to stdout. Guessed profiles include confidence scores:

{"Platform":"github","URL":"https://github.com/torvalds","Username":"torvalds","Name":"Linus Torvalds"}
{"IsGuess":true,"Confidence":0.85,"GuessMatch":["username:exact","name:github"]}

Library

import "github.com/codeGROOVE-dev/sociopath/pkg/sociopath"

profiles, _ := sociopath.FetchRecursiveWithGuess(ctx, url, sociopath.WithBrowserCookies())
for _, p := range profiles {
    fmt.Printf("%s (%.0f%% confidence)\n", p.URL, p.Confidence*100)
}

Directories

Path Synopsis
cmd
extract-cookies command
Package main implements a CLI tool to extract browser cookies for social media platforms.
Package main implements a CLI tool to extract browser cookies for social media platforms.
sociopath command
Command sociopath fetches social media profiles from URLs.
Command sociopath fetches social media profiles from URLs.
pkg
auth
Package auth provides cookie management for authenticated social media scraping.
Package auth provides cookie management for authenticated social media scraping.
bilibili
Package bilibili fetches Bilibili (哔哩哔哩) user profile data.
Package bilibili fetches Bilibili (哔哩哔哩) user profile data.
bluesky
Package bluesky fetches BlueSky user profile data.
Package bluesky fetches BlueSky user profile data.
codeberg
Package codeberg fetches Codeberg profile data.
Package codeberg fetches Codeberg profile data.
crates
Package crates fetches crates.io (Rust package registry) profile data.
Package crates fetches crates.io (Rust package registry) profile data.
devto
Package devto fetches Dev.to user profile data.
Package devto fetches Dev.to user profile data.
dockerhub
Package dockerhub fetches Docker Hub profile data.
Package dockerhub fetches Docker Hub profile data.
generic
Package generic provides HTML fallback extraction for unknown social media platforms.
Package generic provides HTML fallback extraction for unknown social media platforms.
github
Package github fetches GitHub profile data.
Package github fetches GitHub profile data.
gitlab
Package gitlab fetches GitLab profile data.
Package gitlab fetches GitLab profile data.
google
Package google fetches Google/Gmail user profile data via OSINT methods.
Package google fetches Google/Gmail user profile data via OSINT methods.
gravatar
Package gravatar fetches Gravatar profile data from email addresses.
Package gravatar fetches Gravatar profile data from email addresses.
guess
Package guess discovers related social media profiles based on known usernames.
Package guess discovers related social media profiles based on known usernames.
habr
Package habr fetches Habr profile data.
Package habr fetches Habr profile data.
htmlutil
Package htmlutil provides HTML processing utilities for social media scraping.
Package htmlutil provides HTML processing utilities for social media scraping.
httpcache
Package httpcache provides HTTP response caching with thundering herd prevention.
Package httpcache provides HTTP response caching with thundering herd prevention.
instagram
Package instagram provides Instagram profile fetching (requires authentication).
Package instagram provides Instagram profile fetching (requires authentication).
keybase
Package keybase fetches Keybase profile data.
Package keybase fetches Keybase profile data.
linkedin
Package linkedin fetches LinkedIn user profile data.
Package linkedin fetches LinkedIn user profile data.
linktree
Package linktree fetches Linktree profile data.
Package linktree fetches Linktree profile data.
mailru
Package mailru fetches Mail.ru (My World) profile data.
Package mailru fetches Mail.ru (My World) profile data.
mastodon
Package mastodon fetches Mastodon user profile data.
Package mastodon fetches Mastodon user profile data.
medium
Package medium fetches Medium profile data.
Package medium fetches Medium profile data.
profile
Package profile defines the common types for social media profile extraction.
Package profile defines the common types for social media profile extraction.
reddit
Package reddit fetches Reddit user profile data.
Package reddit fetches Reddit user profile data.
sociopath
Package sociopath provides a unified API for fetching social media profiles.
Package sociopath provides a unified API for fetching social media profiles.
stackoverflow
Package stackoverflow fetches StackOverflow user profile data.
Package stackoverflow fetches StackOverflow user profile data.
substack
Package substack fetches Substack author profile data.
Package substack fetches Substack author profile data.
tiktok
Package tiktok provides TikTok profile fetching.
Package tiktok provides TikTok profile fetching.
twitter
Package twitter fetches Twitter/X user profile data using authenticated session cookies.
Package twitter fetches Twitter/X user profile data using authenticated session cookies.
vkontakte
Package vkontakte provides VKontakte profile fetching with optional authentication.
Package vkontakte provides VKontakte profile fetching with optional authentication.
weibo
Package weibo fetches Weibo user profile data using authenticated session cookies.
Package weibo fetches Weibo user profile data using authenticated session cookies.
youtube
Package youtube fetches YouTube channel/user profile data.
Package youtube fetches YouTube channel/user profile data.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL