https://github.com/redphx/apixoo
Python package to interact with Divoom Pixoo app's server
https://github.com/redphx/apixoo
divoom pixoo pixoo-max pixoo64
Last synced: over 1 year ago
JSON representation
Python package to interact with Divoom Pixoo app's server
- Host: GitHub
- URL: https://github.com/redphx/apixoo
- Owner: redphx
- License: mit
- Created: 2023-04-28T00:15:02.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-06-24T02:47:37.000Z (about 3 years ago)
- Last Synced: 2024-07-10T12:13:53.270Z (almost 2 years ago)
- Topics: divoom, pixoo, pixoo-max, pixoo64
- Language: Python
- Homepage:
- Size: 43 KB
- Stars: 22
- Watchers: 7
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[](https://pypi.org/project/APIxoo/)
[](https://opensource.org/licenses/MIT)
# APIxoo
Python package to interact with Divoom Pixoo app's server.
Unlike other packages, this one will only focus on interacting with Divoom Pixoo's server.
For ESP32/Arduino, check [redphx/DivoomClient](https://github.com/redphx/DivoomClient).
## Features
- [x] Login
- [x] Decode Divoom's animation formats to GIFs (16x16, 32x32, 64x64).
- [x] Get animation by ID
- [x] Get animations by Category
- [x] Get animations by Album
- [ ] Get animations by User
- [ ] Search animations & users
- [ ] Like/Dislike animation
- [ ] Comment on animation
- [ ] Upload animations
## Install
```
pip install APIxoo
```
## Example
```python
from apixoo import APIxoo, GalleryCategory, GalleryDimension
# Divoom account
EMAIL = 'em@il.com'
MD5_PASSWORD = 'deadc0ffee...'
# Also accept password string with "password='password'"
api = APIxoo(EMAIL, md5_password=MD5_PASSWORD)
status = api.log_in()
if not status:
print('Login error!')
else:
files = api.get_category_files(
GalleryCategory.RECOMMEND,
dimension=GalleryDimension.W64H64,
page=1,
per_page=20,
)
for info in files:
print(info)
pixel_bean = api.download(info)
if pixel_bean:
pixel_bean.save_to_gif(f'{info.gallery_id}.gif', scale=5)
```
*To be updated...*