How to use PlexAPI - 10 common examples

To help you get started, we’ve selected a few PlexAPI examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github pkkid / python-plexapi / tests / test_utils.py View on Github external
def test_utils_cast():
    int_int = utils.cast(int, 1)
    int_str = utils.cast(int, '1')
    bool_str = utils.cast(bool, '1')
    bool_int = utils.cast(bool, 1)
    float_int = utils.cast(float, 1)
    float_float = utils.cast(float, 1.0)
    float_str = utils.cast(float, '1.2')
    float_nan = utils.cast(float, 'wut?')
    assert int_int == 1 and isinstance(int_int, int)
    assert int_str == 1 and isinstance(int_str, int)
    assert bool_str is True
    assert bool_int is True
    assert float_int == 1.0 and isinstance(float_int, float)
    assert float_float == 1.0 and isinstance(float_float, float)
    assert float_str == 1.2 and isinstance(float_str, float)
    assert float_nan != float_nan  # nan is never equal
    with pytest.raises(ValueError):
        bool_str = utils.cast(bool, 'kek')
github pkkid / python-plexapi / tests / test_utils.py View on Github external
def test_utils_cast():
    int_int = utils.cast(int, 1)
    int_str = utils.cast(int, '1')
    bool_str = utils.cast(bool, '1')
    bool_int = utils.cast(bool, 1)
    float_int = utils.cast(float, 1)
    float_float = utils.cast(float, 1.0)
    float_str = utils.cast(float, '1.2')
    float_nan = utils.cast(float, 'wut?')
    assert int_int == 1 and isinstance(int_int, int)
    assert int_str == 1 and isinstance(int_str, int)
    assert bool_str is True
    assert bool_int is True
    assert float_int == 1.0 and isinstance(float_int, float)
    assert float_float == 1.0 and isinstance(float_float, float)
    assert float_str == 1.2 and isinstance(float_str, float)
    assert float_nan != float_nan  # nan is never equal
    with pytest.raises(ValueError):
        bool_str = utils.cast(bool, 'kek')
github pkkid / python-plexapi / tests-old / test_client.py View on Github external
def _video_playback(plex, client):
    try:
        mtype = 'video'
        movie = plex.library.section(CONFIG.movie_section).get(CONFIG.movie_title)
        subs = [s for s in movie.subtitleStreams if s.language == 'English']
        log(2, 'Client: %s (%s)' % (client.title, client.product))
        log(2, 'Capabilities: %s' % client.protocolCapabilities)
        log(2, 'Playing to %s..' % movie.title)
        client.playMedia(movie); time.sleep(5)
        log(2, 'Pause..')
        client.pause(mtype); time.sleep(2)
        log(2, 'Step Forward..')
        client.stepForward(mtype); time.sleep(5)
        log(2, 'Play..')
        client.play(mtype); time.sleep(3)
        log(2, 'Seek to 10m..')
        client.seekTo(10*60*1000); time.sleep(5)
        log(2, 'Disable Subtitles..')
        client.setSubtitleStream(0, mtype); time.sleep(10)
        log(2, 'Load English Subtitles %s..' % subs[0].id)
github pkkid / python-plexapi / tests-old / test_client.py View on Github external
def _navigate(plex, client):
    episode = plex.library.section(CONFIG.show_section).get(CONFIG.show_title).get(CONFIG.show_episode)
    artist = plex.library.section(CONFIG.audio_section).get(CONFIG.audio_artist)
    log(2, 'Client: %s (%s)' % (client.title, client.product))
    log(2, 'Capabilities: %s' % client.protocolCapabilities)
    # Move around a bit
    log(2, 'Browsing around..')
    client.moveDown(); time.sleep(0.5)
    client.moveDown(); time.sleep(0.5)
    client.moveDown(); time.sleep(0.5)
    client.select(); time.sleep(3)
    client.moveRight(); time.sleep(0.5)
    client.moveRight(); time.sleep(0.5)
    client.moveLeft(); time.sleep(0.5)
    client.select(); time.sleep(3)
    client.goBack(); time.sleep(1)
    client.goBack(); time.sleep(3)
    # Go directly to media
github pkkid / python-plexapi / tests-old / test_search.py View on Github external
def test_search_show(account, plex):
    result_server = plex.search(CONFIG.show_title)
    result_shows = plex.library.section(CONFIG.show_section).search(CONFIG.show_title)
    result_movies = plex.library.section(CONFIG.movie_section).search(CONFIG.show_title)
    log(2, 'Searching for: %s' % CONFIG.show_title)
    log(4, 'Result Server: %s' % result_server)
    log(4, 'Result Shows: %s' % result_shows)
    log(4, 'Result Movies: %s' % result_movies)
    assert result_server, 'Show not found.'
    assert result_server == result_shows, 'Show searches not consistent.'
    assert not result_movies, 'Movie search returned show title.'
github pkkid / python-plexapi / tests / test_search.py View on Github external
def test_search_audio(account, plex):
    result_server = plex.search(CONFIG.audio_artist)
    result_library = plex.library.search(CONFIG.audio_artist)
    result_music = plex.library.section(CONFIG.audio_section).search(CONFIG.audio_artist)
    log(2, 'Searching for: %s' % CONFIG.audio_artist)
    log(4, 'Result Server: %s' % result_server)
    log(4, 'Result Library: %s' % result_library)
    log(4, 'Result Music: %s' % result_music)
    assert result_server, 'Artist not found.'
    assert result_server == result_library == result_music, 'Audio searches not consistent.'
github pkkid / python-plexapi / tests / test_metadata.py View on Github external
def test_partial_video(account, plex):
    result = plex.search(CONFIG.movie_foreign)
    log(2, 'Title: %s' % result[0].title)
    log(2, 'Original Title: %s' % result[0].originalTitle)
    assert(result[0].originalTitle != None)
github pkkid / python-plexapi / tests-old / test_client.py View on Github external
def test_client_navigation(account, plex):
    client = getclient(CONFIG.client, CONFIG.client_baseurl, plex)
    _navigate(plex, client)
github pkkid / python-plexapi / tests / test_utils.py View on Github external
def test_utils_joinArgs():
    test_dict = {'genre': 'action', 'type': 1337}
    assert utils.joinArgs(test_dict) == '?genre=action&type=1337'
github pkkid / python-plexapi / tests / test_utils.py View on Github external
def test_utils_searchType():
    st = utils.searchType('movie')
    assert st == 1
    movie = utils.searchType(1)
    assert movie == '1'
    with pytest.raises(NotFound):
        utils.searchType('kekekekeke')