NOTE: This has been modified slightly by me (klagroix) and is a work in progress. This updates 'Streams' to allow for pagination.
For original code, license, credit, etc, please refer to this fork's upstream repo: https://github.com/PetterKraabol/Twitch-Python
pip install --user twitch-python
An object-oriented approach to accessing the Twitch API and live chat with relationships and smart caching.
# Twitch API
import twitch
helix = twitch.Helix('client-id')
# Users
for user in helix.users(['sodapoppin', 'reckful', 24250859]):
print(user.display_name)
print(helix.user('zarlach').display_name)
# Videos
for video in helix.videos([318017128, 317650435]):
print(video.title)
print(helix.video(318017128).title)
# Video Comments (VOD chat)
for comment in helix.video(318017128).comments:
print(comment.commenter.display_name)
for video, comments in helix.videos([318017128, 317650435]).comments:
for comment in comments:
print(comment.commenter.display_name, comment.message.body)
for video, comments in helix.user('sodapoppin').videos().comments:
for comment in comments:
print(comment.commenter.display_name, comment.message.body)
for user, videos in helix.users(['sodapoppin', 'reckful']).videos(first=5):
for video, comments in videos.comments:
for comment in comments:
print(comment.commenter.display_name, comment.message.body)
# Twitch Chat
twitch.Chat(channel='#sodapoppin', nickname='zarlach', oauth='oauth:xxxxxx').subscribe(
lambda message: print(message.channel, message.user.display_name, message.text))
- Object-oriented relationships
- Smart caching
- New Twitch API (Helix)
- VOD chat from Twitch API v5