# Bluesky Followers Scraper 🌐👥📊 (`scrapestorm/bluesky-followers-scraper`)

Easily gather data about Bluesky followers 🌐. Enter a username or DID to retrieve key info like profile name, avatar image, description, account creation date, and labels 🔍. Seamlessly integrate with tools like Google Drive, Zapier, & more 🔗 to streamline your workflow & boost productivity! ⚡

- **URL**: https://beta-securitybyobscurity.apify.com/scrapestorm/bluesky-followers-scraper.md
- **Developed by:** [Storm\_Scraper](https://beta-securitybyobscurity.apify.com/scrapestorm) (community)
- **Categories:** Lead generation, Social media
- **Stats:** 14 total users, 6 monthly users, 100.0% runs succeeded, 3 bookmarks
- **User rating**: 4.20 out of 5 stars

## Pricing

$17.99/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.
You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

# README

### Bluesky Followers Scraper - Extract Followers Data from Bluesky 🧑‍💻📱

The Bluesky Followers Scraper is a powerful tool designed to extract detailed data from the followers of a Bluesky profile. By providing a profile URL and specifying the maximum number of followers you want to retrieve, you can get the following information for each follower:
Data Extracted 📊

```
Follower DID 🆔: Decentralized Identifier of the follower
Follower Handle 🏷️: Username or handle of the follower
Follower Display Name 🖋️: Full display name of the follower
Follower Avatar 🖼️: URL to the follower's avatar image
Follower Created At ⏳: The time when the follower's account was created
Follower Description 📝: The bio or description of the follower's profile
Profile Link 🔗: Link to the follower's Bluesky profile
Follower Labels 🏷️: Any labels associated with the follower's profile (e.g., restricted access)
Follower Associated Settings ⚙️: Specific settings or preferences related to the follower's profile (e.g., chat settings)
```

### 🛠️ How to Use the Bluesky Followers Scraper

Input Parameters

To use the Bluesky Followers Scraper, provide the following parameters:

{
"profile\_url": "https://bsky.app/profile/fightful.com",
"maxitems": 80
}

Steps

```
Enter Data: Provide the profile URL of the Bluesky account you want to scrape followers from, and specify the maximum number of followers to retrieve.
Start Scraping: Click the "Start" button to begin the scraping process. The tool will search for followers of the given profile and retrieve the relevant data.
Download Your Data: After extraction, you can download the results in formats such as JSON, CSV, XML, RSS, or HTML Table.
```

### Why Scrape Bluesky Followers? 📈

Scraping Bluesky followers is useful for:

Audience Insights 👥: Understanding who follows a specific user and their interests.

Market Research 🔍: Identifying influencers or key figures in a niche or industry.

Competitive Analysis 🏁: Tracking the followers of competitors to learn about potential new audiences.

Community Engagement 💬: Engaging with followers or analyzing engagement patterns.

Influencer Discovery 💡: Finding individuals with high follower engagement for potential collaborations.

### 💸 Pricing

This scraper operates on a subscription basis at a cost of $17.99/month.

### Related Actors

If you're interested in other YouTube or Facebook scraping solutions, check out these related tools:

- [Bluesky Posts Scraper 🌐📊](https://apify.com/scrapestorm/bluesky-posts-scraper)
- [Facebook Followers & Following Scraper 📊👥](https://apify.com/scrapestorm/facebook-followers-following-scraper)
- [💬 YouTube Comments Scraper](https://apify.com/scrapestorm/youtube-comments-scraper---rental-fast-and-cheap)
- [🏎 YouTube Scraper (By Keyword) ](https://apify.com/scrapestorm/youtube)
- [🔴 Youtube Channel Scraper (Rental)](https://apify.com/scrapestorm/youtube-channel-scraper)
- [🌐 Youtube Shorts Scraper 📺 (Rental)](https://apify.com/scrapestorm/youtube-shorts-scraper-rental---fast-cheap)
- [Facebook Ads Library Scraper 🎯📈](https://apify.com/scrapestorm/facebook-ads-library-scraper)
- [Facebook Likes Scraper (Fast & Cheap) 👍 🌟](https://apify.com/scrapestorm/facebook-likes-scraper-fast-cheap)
- [Facebook Shares Scraper (Exclusive & Affordable) 🚀💡](https://apify.com/scrapestorm/facebook-shares-scraper-exclusive-affordable)
- [Facebook Comments Scraper (All-in-One) 💬](https://apify.com/scrapestorm/facebook-comments-scraper-all-in-one)
- [YouTube Transcript Video Scraper 📝 (⚡ Fast & 💸 Cheap)](https://apify.com/scrapestorm/youtube-transcript-videos)
- [Youtube Playlist Scraper 🎵 - Rental (Fast & cheap)](https://apify.com/scrapestorm/youtube-playlist-scraper---rental-fast-cheap)

***

### 💾 Bluesky Followers Scraper Data Output

The scraper will return a list of followers with details in the following format:

Example output:

```
{
    "profile_url": "https://bsky.app/profile/fightful.com",
    "maxitems": 80
}



```

### 📊 Bluesky Posts Scraper Data Output

The Bluesky Posts Scraper will extract the following information for each post and store it in the dataset:

Example output:

```
[
    {
        "did": "did:plc:u6uydz3x625hynuz6zuph2xp",
        "handle": "regeneratedarts.bsky.social",
        "displayName": "regeneratedarts AKA Joi",
        "avatar": "https://cdn.bsky.app/img/avatar/plain/did:plc:u6uydz3x625hynuz6zuph2xp/bafkreihay7ox5gbqxvpzvlgwvvbodt2ykga7qro272bam4ne24zyrreyji@jpeg",
        "createdAt": "2023-07-27T23:07:25.712Z",
        "description": "Freelance Artist | personal account w/ art, transit and Philly content\n\nWebsite under construction 🚧 \n\nhttps://linktr.ee/regeneratedarts\n\n⬇️ commissions, tips and prints\nhttps://ko-fi.com/regeneratedarts/\n\nReposts appreciated 😊",
        "indexedAt": "2025-03-15T14:04:06.342Z",
        "labels": [
            {
                "src": "did:plc:u6uydz3x625hynuz6zuph2xp",
                "uri": "at://did:plc:u6uydz3x625hynuz6zuph2xp/app.bsky.actor.profile/self",
                "cid": "bafyreicryqhyfyatqvaxms5ptxtwpqwdharsqfk2vq4kkyuyrnsxkzp6ji",
                "val": "!no-unauthenticated",
                "cts": "1970-01-01T00:00:00.000Z"
            }
        ],
        "associated": {
            "chat": {
                "allowIncoming": "all"
            }
        },
        "link_to_profile": "https://bsky.app/profile/regeneratedarts.bsky.social"
    }
]



```

### 📫 Support

🌟 Leave us a 5 star if you are satisfied with the product!
🌍 For any questions, specific needs, or issues, please reach out through Apify's platform or via email
[Storm\_Scraper 🌪️🌩️](https://apify.com/scrapestorm)

# Actor input Schema

## `profil_url` (type: `string`):

URL of the profile to scrape followers from

## `maxitems` (type: `integer`):

The maximum number of followers to fetch

## Actor input object example

```json
{
  "profil_url": "https://bsky.app/profile/fightful.com",
  "maxitems": 50
}
```

# 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 = {
    "profil_url": "https://bsky.app/profile/fightful.com",
    "maxitems": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapestorm/bluesky-followers-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 = {
    "profil_url": "https://bsky.app/profile/fightful.com",
    "maxitems": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapestorm/bluesky-followers-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "profil_url": "https://bsky.app/profile/fightful.com",
  "maxitems": 50
}' |
apify call scrapestorm/bluesky-followers-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapestorm/bluesky-followers-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Bluesky Followers Scraper 🌐👥📊",
        "description": "Easily gather data about Bluesky followers 🌐. Enter a username or DID to retrieve key info like profile name, avatar image, description, account creation date, and labels 🔍. Seamlessly integrate with tools like Google Drive, Zapier, & more 🔗 to streamline your workflow & boost productivity! ⚡",
        "version": "0.0",
        "x-build-id": "ofS92wlzj83B1wQUo"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapestorm~bluesky-followers-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapestorm-bluesky-followers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/scrapestorm~bluesky-followers-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapestorm-bluesky-followers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/scrapestorm~bluesky-followers-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapestorm-bluesky-followers-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "profil_url"
                ],
                "properties": {
                    "profil_url": {
                        "title": "URL of the profile to scrape followers from 🚨 (check if the profile has visible followers/following) 👀",
                        "type": "string",
                        "description": "URL of the profile to scrape followers from",
                        "default": "https://bsky.app/profile/fightful.com"
                    },
                    "maxitems": {
                        "title": "Max followers you want to scrape",
                        "type": "integer",
                        "description": "The maximum number of followers to fetch",
                        "default": 50
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
