AD
Boost Your Brand on BlueSky—Exclusive banner space to amplify your reach within the BlueSky community.
BSkyInfo LogoBskyInfo
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryArticlesGuidesGlossaryBluesky SDKsSponsor
Submit
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryGuidesGlossaryArticlesBluesky SDKsSponsorSubmit
  1. SDKs
  2. /Python
  3. /bluesky_network_analysis
rjtavares

bluesky_network_analysis

A Python SDK for Bluesky and AT Protocol by rjtavares

Scripts to analyze a user's Bluesky Network

GitHub Stats

2stars
1forks
1contributors
1open issues

Dates

Created:December 9, 2024
Last updated:February 1, 2025

README

The following content is from bluesky_network_analysis's GitHub repository. All rights reserved by the original author.

Bluesky Social Network Downloader

Overview

This Python script provides a comprehensive tool to download and backup your Bluesky social network data. It offers a user-friendly way to archive your digital presence on Bluesky.

Features

  • Download complete profile information
  • Retrieve full followers list
  • Export following list
  • Archive recent posts and interactions
  • Save data in organized JSON format
  • Timestamp-based backup directories
  • Rate-limit compliant
  • Secure authentication handling

Prerequisites

  • Python 3.8+
  • Bluesky account

Installation

  1. Clone this repository to your local machine
  2. Create a virtual environment (recommended):
    python -m venv venv
    # On Windows:
    venv\Scripts\activate
    # On Unix or MacOS:
    source venv/bin/activate
    
  3. Install required dependencies:
    pip install -r requirements.txt
    

Required packages:

  • atproto (v0.8.1)

Usage

  1. Ensure your virtual environment is activated
  2. Run the script:
    python bluesky_download.py
    
  3. When prompted:
    • Enter your Bluesky handle (e.g., user.bsky.social)
    • Provide your password
    • Wait while the script downloads your data
  4. Find your downloaded data in the timestamped directory created in the script's location

Data Structure

The downloaded data is organized in the data folder with the following structure:

Files

  • followers.json : List of accounts following you
  • following.json : List of accounts you follow
  • posts.json : Archive of your recent posts
  • profile.json : Your profile information
  • following_network.json : Extended network data

Directories

  • following_network/: Contains individual JSON files, one for each account that the user is following, with detailed information about that account's network

Data Format Example

The following data (stored in example_following.json) follows this structure:

{
  "did": "unique-identifier",
  "handle": "username.bsky.social",
  "associated": {
    "chat": {
      "allow_incoming": "all",
      "py_type": "app.bsky.actor.defs#profileAssociatedChat"
    }
  },
  "avatar": "profile-image-url",
  "created_at": "timestamp",
  "description": "user bio",
  "display_name": "User Display Name",
  "indexed_at": "timestamp",
  "labels": []
}

Security Notes

  • Your login credentials are only used for authentication and are never stored
  • Consider using environment variables for credentials in automated scenarios
  • The script uses official Bluesky API endpoints through the atproto library
  • All data is stored locally in your specified directory

Troubleshooting

Common issues and solutions:

  • Authentication errors: Verify your handle and password
  • Connection timeouts: Check your internet connection
  • Rate limiting: The script handles rate limits automatically
  • Package conflicts: Ensure you're using the correct atproto version (0.8.1)

Disclaimer

This tool is designed for personal use and data backup purposes. Please:

  • Respect Bluesky's terms of service
  • Be mindful of API rate limits
  • Do not use the downloaded data for unauthorized purposes
  • Consider the privacy implications of storing social network data

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

Related SDKs

dannguyendancow-bluesky-fun-api-tool

Just having fun with python and Bluesky's AT Protocol. Trying to build a simple CLI and enough of SDK to easily explore and collect my own Bluesky data

1•Python
TahomaSoftSaxeBlueskyPython

A small python library to post basic text and media to bsky.app via atproto's xrpc API.

1•Python
Gorcenskiskeeter-deleter

A script for auto-deleting Bluesky posts

65•Python
Zetaphorbsky-altometer

A site that measures the current percentage of Bluesky posts missing alt text

7•Python
snarfedbridgy-fed

🌉 A bridge between decentralized social networks

1002•Python
snarfedgranary

💬 The social web translator

485•Python

Resources

GitHub Repository

License

Unknown

Author

rjtavares
rjtavares

Activity

Last commit: February 1, 2025
Commit frequency: Unknown

Our Sponsors

Your Brand Here!

50K+ engaged viewers every month

Limited spots available!

📧 Contact us via email🦋 Contact us on Bluesky
BSkyInfo LogoBskyInfo

The Most Comprehensive Bluesky Tools Directory

Stay updated with the latest Bluesky tools and ecosystem news 🦋

Bluesky butterfly logo
Quick LinksSubmit a ToolSponsorAboutLegal Information
ToolsFeed DirectoryLabeler DirectorySchedulingAnalyticsAll ToolsCategoriesCollectionsTags
ResourcesArticlesBluesky GuidesBluesky GlossaryBluesky SDKsBluesky ResourcesSkyRaffleMeida Coverage
Our ProductsRaffleBlueAiTeach ToolsLaiewAI affiliate listFirsto

This website may contain affiliate links

© 2025 BskyInfo. All rights reserved.