Skip to main content

Extract container information for a given user in DockerHub.

Project description

DevelopersToolbox logo
Github Build Status License Created
Release Released Commits since release

Overview

DockerHub Extractor is a Python package designed to fetch and process detailed information about repositories hosted on Docker Hub. This package is particularly useful for users who want to retrieve and analyze metadata for repositories maintained by a specific Docker Hub user.

Features

  • Retrieve a list of repositories maintained by a specific Docker Hub user.
  • Fetch detailed metadata for each repository, including information such as tags, stars, pulls, and more.
  • Custom exceptions for handling errors gracefully.
  • Option to set the Docker Hub username after initializing the class.

Installation

You can install the package using pip:

pip install wolfsoftware.dockerhub-extractor

Usage

Basic Usage

Here's a basic example of how to use the DockerHub Extractor:

from wolfsoftware.dockerhub_extractor import DockerHubExtractor

# Initialize without username
dockerhub_extractor = DockerHubExtractor()

# Set username later
dockerhub_extractor.set_username("your_dockerhub_username")

# Get detailed information for all repositories
try:
    repositories_details = dockerhub_extractor.get_all_repositories_details()
    print(repositories_details)
except DockerHubExtractorError as e:
    print(f"An error occurred: {e.message}")

Setting Username During Initialization

You can also set the username during initialization:

dockerhub_extractor = DockerHubExtractor("your_dockerhub_username")

Retrieving User Repositories

You can retrieve a list of repositories maintained by a specific user:

repositories = dockerhub_extractor.get_user_repositories()
print(repositories)

Retrieving Repository Details

To get detailed information about a specific repository:

repository_details = dockerhub_extractor.get_repository_details("repository_name")
print(repository_details)

API Reference

Classes

DockerHubExtractor

A class to fetch and process repository details for a given Docker Hub user.

__init__(self, username: str)
  • Initializes the DockerHubExtractor with a username.
  • Parameters:
    • username (str): The Docker Hub username.
  • Raises:
    • DockerHubExtractorError: If the username is not provided.
set_username(self, username: str)
  • Sets the Docker Hub username.
  • Parameters:
    • username (str): The Docker Hub username.
  • Raises:
    • DockerHubExtractorError: If the username is not provided.
get_user_repositories(self) -> list
  • Fetches the list of repositories for the given Docker Hub user.
  • Returns:
    • list: A list of dictionaries containing repository names and summaries.
  • Raises:
    • DockerHubExtractorError: If there is an error fetching or parsing the user profile.
get_repository_details(self, repository_name: str) -> dict
  • Fetches detailed information for a specific repository.
  • Parameters:
    • repository_name (str): The name of the repository.
  • Returns:
    • dict: A dictionary containing detailed information about the repository.
  • Raises:
    • DockerHubExtractorError: If there is an error fetching or parsing the repository details.
get_all_repositories_details(self) -> list
  • Fetches detailed information for all repositories of the given Docker Hub user.
  • Returns:
    • list: A list of dictionaries containing detailed information about each repository.
  • Raises:
    • DockerHubExtractorError: If there is an error fetching or processing the repository details.

DockerHubExtractorError

Custom exception class for DockerHubExtractor errors.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

File details

Details for the file wolfsoftware_dockerhub_extractor-0.1.0.tar.gz.

File metadata

File hashes

Hashes for wolfsoftware_dockerhub_extractor-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5fdf9effe9c2ac3c6529297bc9471803e813535d625eb448ac8c0782963862d8
MD5 7858cf3120f59c35b520a302b4fbf5d6
BLAKE2b-256 7ab6c3d4ebc3638a16916869874465afaf3c7934a31c63837c810e1666a6cbb5

See more details on using hashes here.

Provenance

File details

Details for the file wolfsoftware.dockerhub_extractor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for wolfsoftware.dockerhub_extractor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f9a3ff83afaefc073330a6c6ccb0d4acad6de4651b10284e23193db545f46cd8
MD5 212585ca4c606db20aa38d9be5bd0879
BLAKE2b-256 4cce401a64551963477a4d09062b57785efe51de622af86064a70a0a462cd690

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page