Skip to content

Latest commit

 

History

History
87 lines (61 loc) · 3.25 KB

README.md

File metadata and controls

87 lines (61 loc) · 3.25 KB

IPTV-Parser.js

A easy to use, pure vanilla JavaScript M3U / IPTV parser
Show your support!

This is a basic JavaScript library for fetching & parsing M3U files from a URL or path to file. It uses iptv-list-parser under the hood with some extra functionallity & improved error handling.

Example usage

Parse M3U8 from URL

import {ParseM3U} from 'https://cdn.jsdelivr.net/gh/MarketingPipeline/IPTV-Parser.js@latest/dist/iptv-parser.min.js';

async function Fetch_IPTV_Links() {
  try {
     let IPTV_Results = ParseM3U(`https://raw.githubusercontent.com/iptv-org/iptv/master/streams/us_pluto.m3u`)
     console.log(await IPTV_Results)
  } catch (err) {
     console.error(err);
  }
}
Fetch_IPTV_Links()

will return a JSON object of parsed results.

Parse M3U8 from string

import {ParseM3U} from 'https://cdn.jsdelivr.net/gh/MarketingPipeline/IPTV-Parser.js@latest/dist/iptv-parser.min.js';

async function Parse_M3U_String() {
  try {
     let IPTV_Results = ParseM3U(`#EXTM3U x-tvg-url="http://example.com/epg.xml.gz"
#EXTINF:-1 tvg-id="cnn.us" tvg-name="CNN" tvg-url="http://195.154.221.171/epg/guide.xml.gz" timeshift="3" catchup="shift" catchup-days="3" catchup-source="https://m3u-server/hls-apple-s4-c494-abcdef.m3u8?utc=325234234&lutc=3123125324" tvg-logo="http://example.com/logo.png" group-title="News",CNN (US)
#EXTGRP:News
#EXTVLCOPT:http-referrer=http://example.com/
#EXTVLCOPT:http-user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5)
http://example.com/stream.m3u8`)
     console.log(await IPTV_Results)
  } catch (err) {
    console.log(err)
  }
}

Parse_M3U_String()

will return a JSON object of parsed results.

Contributing GitHub

Want to improve this project? Create a pull request with detailed changes / improvements! If approved you will be added to the list of contributors of this awesome project!

See also the list of contributors who participate in this project.

License GitHub

This project is licensed under the MIT License - see the LICENSE file for details.