nitro9

BBC iPlayer available programmes via Nitro

Usage no npm install needed!

<script type="module">
  import nitro9 from 'https://cdn.skypack.dev/nitro9';
</script>

README

Nitro9

A tool to index available programmes on the BBC iPlayer / radio-player for offline analysis.

This is a scraper that runs on Morph. Please read the Morph.io documentation.

It can also be run locally.

Set an environment variable called MORPH_API_KEY to your Nitro API key. When initially run on an empty / non-existant database, a full scrape of available programmes is performed. Subsequently, only those programmes broadcast since the last update will be added. Programmes passed their expiry date are removed.

To build a full index again, either delete the database or set the environment variable MORPH_REBUILD to true.

Usage: node scraper.js

Output is an sqlite3 database containing one table, "data":

    var fields = [
        '#index',
        'type',
        'name',
        'pid',
        'available',
        'expires',
        'episode',
        'seriesnum',
        'episodenum',
        'versions',
        'duration',
        'desc',
        'channel',
        'categories',
        'thumbnail',
        'timeadded',
        'guidance',
        'web',
        'vpids'
    ];

Also included is a simple command line utility called query.js for performing SQL queries against the remote Morph.io database and returning the rows in JSON format.

Usage: node query {SQL-statement}