sociopath

module
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Dec 3, 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.
cache
Package cache provides HTTP caching interfaces and utilities.
Package cache provides HTTP caching interfaces and utilities.
codeberg
Package codeberg fetches Codeberg profile data.
Package codeberg fetches Codeberg profile data.
devto
Package devto fetches Dev.to user profile data.
Package devto fetches Dev.to user 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.
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.
instagram
Package instagram provides Instagram profile fetching (requires authentication).
Package instagram provides Instagram profile fetching (requires authentication).
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.
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