Skip to main content
Social Analyzer can extract structured metadata and patterns from detected profiles to gather intelligence about the profile owner. This information is crucial for OSINT investigations and profile correlation.

Overview

The extraction module (extraction.js) provides two main capabilities:
  1. Metadata Extraction: Extracts meta tags from profile HTML
  2. Pattern Extraction: Finds specific patterns like emails, phones, and links
Both features are optional and activated with command-line flags.

Metadata Extraction

Metadata extraction parses HTML meta tags to collect information about profiles, including social graph data, descriptions, images, and other structured information.

How It Works

From extraction.js:6-58, the metadata extractor:

Filtered Meta Tags

The extractor filters out technical meta tags using regex patterns:
This ensures only meaningful metadata is extracted.

Supported Meta Tag Types

The extractor handles three types of meta tags:
  1. Property-based (Open Graph, Facebook)
  2. Name-based (Twitter, standard meta)
  3. Itemprop-based (Schema.org)

Duplicate Handling

From extraction.js:34-45, the extractor combines duplicate metadata:
This prevents redundant metadata entries while preserving multiple values.

Usage

Example Output

Metadata extraction only occurs for profiles with “good” status to reduce processing time and focus on confirmed matches.

Pattern Extraction

Pattern extraction uses regular expressions to find specific information patterns within profile HTML source code.

How It Works

From extraction.js:60-87, the pattern extractor:

Pattern Types

Each website in the detection database can define custom extraction patterns:
  • Email addresses
  • Phone numbers
  • Social media links
  • Website URLs
  • User IDs
  • Custom patterns

Configuration Format

Patterns are configured per website in sites.json:

URL Decoding

Links are automatically URL-decoded to make them human-readable:

Usage

Example Output

Pattern extraction is particularly useful for finding cross-platform connections and building a comprehensive profile of the target.

Integration with Detection Modes

Extraction features work with both fast and slow detection modes.

Fast Mode Integration

From fast-scan.js:162-177:

Slow Mode Integration

From slow-scan.js:136-151, slow mode uses the same extraction logic:
Extraction only occurs after a profile is confirmed with “good” status to optimize performance.

Common Metadata Fields

Open Graph (Facebook)

  • og:title - Profile or page title
  • og:description - Profile bio or description
  • og:image - Profile picture URL
  • og:url - Canonical profile URL
  • og:type - Content type (profile, article, etc.)
  • og:site_name - Platform name

Twitter Cards

  • twitter:card - Card type (summary, player, etc.)
  • twitter:site - Site’s Twitter handle
  • twitter:creator - Content creator’s handle
  • twitter:title - Content title
  • twitter:description - Content description
  • twitter:image - Image URL

Schema.org

  • name - Person or organization name
  • description - Profile description
  • image - Profile image
  • url - Website URL

Performance Considerations

Memory Usage

Metadata extraction is memory-efficient as it:
  • Filters out unnecessary meta tags
  • Combines duplicates
  • Only processes confirmed profiles

Processing Time

Extraction adds minimal overhead:
  • Metadata: ~10-50ms per profile
  • Patterns: Depends on regex complexity and source size
  • Total: Usually less than 100ms additional per profile

Optimization Tips

  1. Use with filtering: Combine with --filter good to extract only from confirmed profiles
  2. Limit websites: Use --websites or --top to reduce the number of profiles processed
  3. Choose wisely: Only enable extraction when you need the additional intelligence

Practical Applications

OSINT Investigations

  • Build comprehensive profiles across platforms
  • Find hidden connections between accounts
  • Identify real names and contact information
  • Map social networks and relationships

Data Correlation

This helps identify:
  • Shared email addresses
  • Common profile pictures
  • Consistent bio information
  • Cross-platform links

Security Research

  • Identify information leakage
  • Find exposed personal data
  • Map digital footprints
  • Assess privacy exposure

Output Formats

Extracted data is available in multiple formats:

JSON Format

Pretty Format

Log Files

All extraction results are automatically logged:
Be mindful of privacy and legal considerations when extracting and storing personal information. Always ensure you have proper authorization for OSINT activities.