# Website Social Scraper (`burbn/website-social-scraper`) Actor

Stop searching manually! ✋ Get every social media handle from a list of URLs in seconds. ⚡ Bulk scrape LinkedIn, Instagram, TikTok & Twitter/X with ease. Clean table views for high-quality lead prospecting! 📊

- **URL**: https://apify.com/burbn/website-social-scraper.md
- **Developed by:** [Kevin](https://apify.com/burbn) (community)
- **Categories:** Lead generation, Social media, Automation
- **Features:** Limited permissions
- **Stats:** 189 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Website Social Media Link Scraper 🌐

Extract all social media links from any website automatically! This powerful Apify actor discovers and extracts social media profiles from websites including Twitter/X, Facebook, Instagram, YouTube, TikTok, LinkedIn, GitHub, Snapchat, Pinterest, Reddit, and more.

### ✨ Features

- 🔍 **Automatic Detection** - Intelligently finds all social media links on any website
- 🚀 **Bulk Scraping** - Process up to 1,000 websites in a single run
- 🌐 **Multi-Platform Support** - Extracts links from 10+ social platforms
- **Business Ready** - Perfect for lead generation, competitor research, and marketing intelligence

### 🎯 Supported Social Media Platforms

| Platform | Icon | Platform | Icon |
|----------|------|----------|------|
| Twitter/X | 🐦 | LinkedIn | 💼 |
| Facebook | 📘 | GitHub | 💻 |
| Instagram | 📸 | Snapchat | 👻 |
| YouTube | 📺 | Pinterest | 📌 |
| TikTok | 🎵 | Reddit | 🤖 |

### Quick Start

#### Input Configuration

Simply provide one or more website URLs:

```json
{
  "websites": [
    "https://github.com/",
    "https://example.com/",
    "https://yourwebsite.com/"
  ]
}
```

#### Example Output

```json
{
  "website": "https://github.com/",
  "twitter": "https://twitter.com/GitHub",
  "facebook": "https://www.facebook.com/GitHub",
  "youtube": null,
  "instagram": "https://www.instagram.com/github",
  "github": "https://github.com/login",
  "snapchat": null,
  "tiktok": "https://www.tiktok.com/@github",
  "linkedin": "https://www.linkedin.com/company/github",
  "pinterest": null,
  "reddit": null
}
```

### 📊 Dataset Views

The actor provides **5 organized table views** for easy data analysis:

#### 1. 🌐 All Social Links

Complete view of all extracted social media links from all platforms.

#### 2. ⭐ Major Platforms

Focused view of major social platforms:

- Twitter/X
- Facebook
- Instagram
- YouTube
- TikTok
- LinkedIn

#### 3. 💻 Developer Platforms

Developer-focused platforms:

- GitHub
- Reddit

#### 4. 📸 Visual & Video Platforms

Visual content platforms:

- Instagram
- YouTube
- TikTok
- Snapchat
- Pinterest

#### 5. 💼 Professional Platforms

Professional networking platforms:

- LinkedIn
- Twitter/X
- Facebook

### Use Cases

#### 🎯 Lead Generation

Build comprehensive contact databases by extracting social media profiles from company websites.

#### Competitor Analysis

Research competitors' social media presence and identify which platforms they're active on.

#### 📈 Marketing Intelligence

Discover influencers and brands by analyzing their social media footprint across platforms.

#### 🤝 Partnership Research

Find potential partners and collaborators by identifying their social channels.

#### 📊 Market Research

Analyze industry trends by studying social media presence across multiple companies.

### ⚙️ Configuration

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `websites` | Array | ✅ Yes | List of website URLs to scrape (1-1000 URLs) |

#### URL Requirements

- URLs must start with `http://` or `https://`
- Maximum 1,000 websites per run
- Minimum 1 website required

### 🔧 Technical Details

#### Performance

- Processes ~2 websites per second
- Automatic delay between requests to avoid rate limits
- Handles network errors gracefully

#### Error Handling

- Comprehensive error messages for debugging
- Continues processing even if individual URLs fail
- Logs all errors to console for monitoring

### 📝 Output Fields

| Field | Type | Description |
|-------|------|-------------|
| `website` | String | The original website URL |
| `twitter` | String/null | Twitter/X profile URL |
| `facebook` | String/null | Facebook page URL |
| `instagram` | String/null | Instagram profile URL |
| `youtube` | String/null | YouTube channel URL |
| `tiktok` | String/null | TikTok profile URL |
| `linkedin` | String/null | LinkedIn profile/company URL |
| `github` | String/null | GitHub profile URL |
| `snapchat` | String/null | Snapchat profile URL |
| `pinterest` | String/null | Pinterest profile URL |
| `reddit` | String/null | Reddit profile URL |

### 🎓 Best Practices

1. **URL Format**: Always include the protocol (`https://` or `http://`)
2. **Batch Processing**: Process multiple websites in one run for efficiency
3. **Data Export**: Use the pre-configured views for specific use cases
4. **Error Monitoring**: Check the console logs for any failed URLs

### ❓ FAQ

#### Q: How accurate is the social link detection?

A: The scraper uses advanced algorithms to detect social media links with high accuracy. However, results depend on how websites structure their social links.

#### Q: What happens if a website has no social links?

A: The actor will return `null` values for all social platforms and log a message indicating no links were found.

#### Q: Can I scrape password-protected websites?

A: No, this actor only works with publicly accessible websites.

#### Q: How many websites can I scrape at once?

A: You can scrape up to 1,000 websites in a single run.

#### Q: What if a social platform isn't detected?

A: The actor detects the most common social platforms. If a platform isn't listed, it won't be extracted.

### 🛠️ Troubleshooting

#### Common Issues

**Issue**: "Invalid URL format" error

- **Solution**: Ensure URLs start with `http://` or `https://`

**Issue**: No social links found

- **Solution**: Verify the website actually has social media links visible on the page

**Issue**: Rate limit errors

- **Solution**: The actor handles this automatically with built-in delays and retries

### 📞 Support

For issues, questions, or feature requests, please contact apify issues tab.

***

**Made with ❤️ using Apify**

🌟 If you find this actor useful, please give it a star!

# Actor input Schema

## `websites` (type: `array`):

Enter website URLs to scrape social media links from (e.g., https://github.com/, https://example.com). You can add multiple websites to scrape in bulk. Each URL must start with http:// or https://.

## Actor input object example

```json
{
  "websites": [
    "https://github.com/"
  ]
}
```

# Actor output Schema

## `overview` (type: `string`):

View all extracted social media links from all platforms.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "websites": [
        "https://github.com/"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("burbn/website-social-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "websites": ["https://github.com/"] }

# Run the Actor and wait for it to finish
run = client.actor("burbn/website-social-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "websites": [
    "https://github.com/"
  ]
}' |
apify call burbn/website-social-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,burbn/website-social-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Dsm6qu2p31b2QbD3G/builds/PG7gBIIJA9mE2aJo0/openapi.json
