Some parts of the internal Nindo-Api are pretty inconsistent (For example some properties are snake- and some are camel-case (╯°□°)╯︵ ┻━┻).
That's why some of the constructors are pretty messy ...
This library is a product of reverse engineering and highly untested. Please create an issue if you encounter a bug.
- Artist Retrieval
- Search
- Charts
- Artist Details
- Channel Details
- Channel History
- Channel Posts
- Live Websocket
- Viral
- Coupons
- Milestones
pip install git+git://github.com/Merlintor/nindo.de
All the examples need to be executed in an async context.
Many functions return an async iterator which supports manipulation like .filter, .map and more.
See util.py for all available functions.
client = NindoClient()
async for artist in client.search("unge"):
print(artist.name)client = NindoClient()
async for artists in client.youtube_charts():
print(artist.name)client = NindoClient()
# Get an artist by id
await client.get_artist("fe23cce0bcdb3d89cbfd500d91487202")
# Get the first instagram channel of the artist
channel = artist.instagram_channels[0]
# Get the channel history
history = await channel.get_history()
# Print the count of entries
print(len(history.entries)
# Print the total follower change over the time span
print(history.time_span, history.total_change)This only seems to work for channels that appear at the top of the milestones.
client = NindoClient()
# Get an artist by id
await client.get_artist("fe23cce0bcdb3d89cbfd500d91487202")
# Get the first instagram channel of the artist
channel = artist.instagram_channels[0]
# Print each follower update
async for follower in channel.live():
print(follower)See example.py for more information.