a pythonic API for the bong.tv platform
pybongtvapi is a pythonic interface to the bong.tv platform.
pybongtvapi supports direct access to bong.tv’s JSON web service:
import pybongtvapi # log in with your username and password credentials = pybongtvapi.UserCredentials("john", "doe") api = pybongtvapi.API(credentials=credentials) # or, if there is a bong.tv cookie somewhere on your hard disk api = pybongtvapi.API(cookie='path/to/your/cookie.txt')
From here on, all methods outlined in bong.tv’s API specification can be called:
# get list of recordings recordings = api.list_user_recordings() # list all channels channels = api.list_channels() # let's assume today is 15th of May 2015. now, list today's broadcasts .. channel_id = 1 api.get_broadcasts(channel_id) # or tomorrow's broadcast api.get_broadcasts(channel_id, date='16-05-2015') # create a recording from a broadcast ID broadcast_id = 12345 api.create_recording(broadcast_id) # delete a recording from your BongSpace recording_id = 56789 api.delete_recording(recording_id) # search for broadcasts broadcasts = api.search_broadcasts('heute')
You can also work with a higher-level API provided by pybongtvapi. You can use the pybongtvapi.EPG to access the BongGuide:
epg = pybongtvapi.EPG(api) for channel in epg.channels: print(channel.name) for broadcast in channel.broadcasts: print() print(broadcast.title) print(broadcast.outline)
Or use the pybongtvapi.PVR to access your personal BongSpace:
pvr = pybongtvapi.PVR(api) for recording in pvr.recordings: print(recording.title) if recording.is_recorded(): print(recording.url)
pybongtvapi is available under MIT License.
You can download pybongtvapi.py.
git clone firstname.lastname@example.org:cmaugg/pybongtvapi