Extract container information for a given user in DockerHub.
Project description
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
Release history Release notifications | RSS feed
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
- Download URL: wolfsoftware_dockerhub_extractor-0.1.0.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fdf9effe9c2ac3c6529297bc9471803e813535d625eb448ac8c0782963862d8 |
|
MD5 | 7858cf3120f59c35b520a302b4fbf5d6 |
|
BLAKE2b-256 | 7ab6c3d4ebc3638a16916869874465afaf3c7934a31c63837c810e1666a6cbb5 |
Provenance
File details
Details for the file wolfsoftware.dockerhub_extractor-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: wolfsoftware.dockerhub_extractor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9a3ff83afaefc073330a6c6ccb0d4acad6de4651b10284e23193db545f46cd8 |
|
MD5 | 212585ca4c606db20aa38d9be5bd0879 |
|
BLAKE2b-256 | 4cce401a64551963477a4d09062b57785efe51de622af86064a70a0a462cd690 |