Skip to main content

Overview

Social Analyzer supports advanced network configuration including proxy servers, custom HTTP headers, user-agent strings, and request timeouts. These settings are essential for avoiding rate limits, bypassing restrictions, and integrating with existing security infrastructure.

Proxy Configuration

Setting Up a Proxy (Node.js)

In Node.js, the proxy is configured in modules/helper.js:
The proxy can also be set dynamically through the web API:

Proxy Support (Python)

Python version uses the requests library with session-based connections. To configure a proxy, you’ll need to modify the session configuration:

HTTPS Proxy Agent

The Node.js implementation uses https-proxy-agent for secure proxy connections:

User Agent Configuration

Default User Agents

Node.js:
Python:

Custom User Agent (Python CLI)

dict
default:"{}"
Custom HTTP headers including User-Agent.

Custom User Agent (Node.js API)

Request Timeout Configuration

Timeout Settings (Python)

integer
default:"0"
Delay in seconds between each request to avoid rate limiting.Default: 0 (no delay)
Setting a timeout helps avoid rate limits and reduces the chance of being blocked by websites.
The timeout is applied between requests:

Connection Timeout (Node.js)

Node.js uses dynamic timeouts based on site configuration:
Default timeout: 5 seconds per request

Timeout in Slow Mode

For browser-based slow scanning, timeouts are configured per site:

Custom Headers

Python Implementation

dict
default:"{}"
Custom HTTP headers as a JSON dictionary.
Headers are applied to all requests:

Node.js Implementation

Headers are configured in helper.js and can be modified programmatically:

Logging Configuration

boolean
default:"false"
Enable detailed logging for debugging and analysis.
string
default:""
Custom directory for log files.
boolean
default:"false"
Disable output to screen (useful for automation).

SSL/TLS Configuration

Certificate Verification

Python implementation disables SSL verification by default for compatibility:
Disabling SSL verification can expose you to security risks. Only use this in controlled environments.

Custom Certificate (Node.js)

The Node.js implementation supports custom certificate files:

Complete Examples

Python with Proxy and Custom Headers

Node.js Web API Configuration

Avoiding Rate Limits

FAQ

Proxies are useful for:
  • Avoiding IP bans: Distribute requests across multiple IP addresses
  • Bypassing geo-restrictions: Access region-locked websites
  • Corporate networks: Route traffic through required proxy servers
  • Privacy: Hide your real IP address
Recommended timeout values:
  • Fast searches: 1-2 seconds
  • Avoiding rate limits: 2-3 seconds
  • Conservative approach: 5+ seconds
Higher timeouts reduce the risk of being blocked but increase total scan time.
Node.js implementation supports HTTPS proxies via https-proxy-agent. For SOCKS5 support, you may need to use a SOCKS-to-HTTP proxy converter or modify the proxy agent configuration.
For user agent rotation, you’ll need to:
  1. Create a script that runs Social Analyzer multiple times
  2. Change the --headers parameter for each run
  3. Use different user agent strings from a list
When --logs is enabled, Social Analyzer creates detailed logs in the logs directory. Use --silent to suppress console output while still logging to files.

See Also