Python library for easy interaction with Hypixel API, specifically designed for SkyBlock profile data
Project description
Hypixelez
English | Russian
A modern Python library for easy interaction with the Hypixel API, specifically designed for SkyBlock profile data.
Features
- 🔍 Easy UUID lookup - Get Minecraft player UUID by username
- 📊 Comprehensive SkyBlock stats - Access collections, skills, slayers, and dungeons
- 🎯 Type hints - Full type support for better development experience
- 🛡️ Error handling - Robust error handling with safe defaults
- 📝 Logging - Configurable logging for debugging
- ⚡ Caching - Smart caching for UUID lookups
- 🧪 Tested - Comprehensive test suite
Installation
pip install hypixelez
Quick Start
from hypixelez import HypixelClient
# Initialize client with your API key
client = HypixelClient(api_key="your-hypixel-api-key")
# Get player UUID
uuid = client.get_uuid_by_name("Neono4ka")
# Get available profiles
profiles = client.get_profile_names_ids_by_id(uuid)
# {'Kiwi': '0b1362a7-43e8-454b-a2ed-6db43ae32f19', ...}
# Fetch profile data
profile_data = client.fetch_profile_info(uuid, "f5791b0c-caf1-4701-aea3-d727ea53a901")
# Access various statistics
print(f"Skill Level: {profile_data.get_skill_level('SKILL_CARPENTRY')}")
print(f"Collection: {profile_data.get_collection('LOG')}")
print(f"Slayer XP: {profile_data.get_slayer_xp('zombie')}")
print(f"Catacombs Level: {profile_data.get_cata_level()}")
Available Methods
Player Information
get_global_level() - SkyBlock level
get_global_xp() - Current SkyBlock XP
Skills
get_skill_level(skill_name) - Skill level (0-60)
get_skill_current_level_xp(skill_name) - Current level XP
Collections
get_collection(collection_name) - Collection count
Slayers
get_slayer_stats(slayer_name) - List of kills per tier
get_slayer_stats_by_tier(slayer_name, tier) - Kills for specific tier
get_slayer_xp(slayer_name) - Slayer XP
get_slayer_level(slayer_name) - Slayer level
Dungeons
get_cata_level() - Catacombs level
get_cata_xp() - Catacombs XP
get_cata_class_level(class_name) - Class level
get_cata_class_xp(class_name) - Class XP
Configuration
# Enable debug logging
client = HypixelClient(api_key="your-key", debug=True)
# Or disable debug logging (default)
client = HypixelClient(api_key="your-key", debug=False)
Error Handling
All methods return safe defaults (usually 0) when data is not found:
# If skill doesn't exist, returns 0 instead of throwing error
level = profile_data.get_skill_level("NON_EXISTENT_SKILL") # Returns 0
Getting API Key
- Visit Hypixel Developer Dashboard
- Login with your Minecraft account
- Generate a new API key
- Use it in your application
Testing
To run tests, set your API key as environment variable:
export API_KEY="your-hypixel-api-key"
pytest
Requirements
- Python 3.9+
- requests library
License
MIT License - see LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
Support
If you encounter any issues or have questions, please open an issue on GitHub.
⭐ If this project helped you, please give it a star on GitHub!
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hypixelez-1.0.1.tar.gz.
File metadata
- Download URL: hypixelez-1.0.1.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
875d23115ff1e98783d41185732fb5a69bd539e434bb671d000fbcc77f42af72
|
|
| MD5 |
28cbc852b68f25fe21210434c403644a
|
|
| BLAKE2b-256 |
b5dde37df5acbe607c687a2493e5b21fe2a59e80aaa22ece6dcd64fd124df814
|
Provenance
The following attestation bundles were made for hypixelez-1.0.1.tar.gz:
Publisher:
python-publish.yml on SerJo2/HypixelEz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hypixelez-1.0.1.tar.gz -
Subject digest:
875d23115ff1e98783d41185732fb5a69bd539e434bb671d000fbcc77f42af72 - Sigstore transparency entry: 685744242
- Sigstore integration time:
-
Permalink:
SerJo2/HypixelEz@7d4afeb9fdfe5a7ef3bbcc862d7ae6dbd5fb2b90 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/SerJo2
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@7d4afeb9fdfe5a7ef3bbcc862d7ae6dbd5fb2b90 -
Trigger Event:
release
-
Statement type:
File details
Details for the file hypixelez-1.0.1-py3-none-any.whl.
File metadata
- Download URL: hypixelez-1.0.1-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1a977824fb465a7116760a30e936f6cb4d6b124ec35131789cd9a9c3f0c45f3
|
|
| MD5 |
950b2d870cc5524c32ccf9693c5d7e1e
|
|
| BLAKE2b-256 |
6034dac0c721ae638de8c1a80b3c842ba92d46cd0a9a0a189c1df61136871892
|
Provenance
The following attestation bundles were made for hypixelez-1.0.1-py3-none-any.whl:
Publisher:
python-publish.yml on SerJo2/HypixelEz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hypixelez-1.0.1-py3-none-any.whl -
Subject digest:
d1a977824fb465a7116760a30e936f6cb4d6b124ec35131789cd9a9c3f0c45f3 - Sigstore transparency entry: 685744243
- Sigstore integration time:
-
Permalink:
SerJo2/HypixelEz@7d4afeb9fdfe5a7ef3bbcc862d7ae6dbd5fb2b90 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/SerJo2
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@7d4afeb9fdfe5a7ef3bbcc862d7ae6dbd5fb2b90 -
Trigger Event:
release
-
Statement type: