Alat untuk mengunduh EPG (Panduan Program Elektronik) untuk ribuan saluran TV dari ratusan sumber.
Pertama, Anda perlu menginstal Node.js di komputer Anda. Anda juga perlu menginstal Git untuk mengikuti instruksi ini.
Setelah itu buka konsol (atau terminal jika Anda memiliki macOS) dan ketik perintah berikut:
git clone --depth 1 -b master https://github.com/iptv-org/epg.git Kemudian arahkan ke folder epg yang diunduh:
cd epgDan instal semua dependensi:
npm installUntuk memulai unduhan panduan, pilih salah satu situs yang didukung dan tempel namanya ke dalam perintah di bawah ini:
npm run grab -- --site=example.com Dan setelah unduhan selesai, panduan ini akan disimpan ke file guide.xml .
Usage: npm run grab -- [options]
Options:
-s, --site < name > Name of the site to parse
-c, --channels < path > Path to * .channels.xml file (required if the " --site " attribute is
not specified)
-o, --output < path > Path to output file (default: " guide.xml " )
-l, --lang < code > Filter channels by language (ISO 639-2 code)
-t, --timeout < milliseconds > Override the default timeout for each request
-d, --delay < milliseconds > Override the default delay between request
--days < days > Override the number of days for which the program will be loaded
(defaults to the value from the site config)
--maxConnections < number > Limit on the number of concurrent requests (default: 1)
--cron < expression > Schedule a script run (example: " 0 0 * * * " )
--gzip Create a compressed version of the guide as well (default: false)Anda dapat menyediakan panduan melalui URL dengan menjalankan server Anda sendiri:
npm run serveSetelah itu, panduan ini akan tersedia di tautan:
http://localhost:3000/guide.xml
Selain itu akan tersedia untuk perangkat lain di jaringan lokal yang sama di alamat:
http://<your_local_ip_address>:3000/guide.xml
Secara default, panduan untuk setiap saluran diunduh satu per satu, tetapi Anda dapat mengubah perilaku ini dengan meningkatkan jumlah permintaan simultan menggunakan atribut --maxConnections :
npm run grab -- --site=example.com --maxConnections=10Tetapi ketahuilah bahwa di bawah beban berat, beberapa situs dapat mulai mengembalikan kesalahan atau sepenuhnya memblokir akses Anda.
Buat file XML dan salin deskripsi semua saluran yang Anda butuhkan dari /situs ke dalamnya:
<? xml version = " 1.0 " encoding = " UTF-8 " ?>
< channels >
< channel site = " arirang.com " lang = " en " xmltv_id = " ArirangTV.kr " site_id = " CH_K " >Arirang TV</ channel >
...
</ channels > Dan kemudian tentukan jalur ke file itu melalui atribut --channels :
npm run grab -- --channels=path/to/custom.channels.xml Jika Anda ingin mengunduh panduan secara otomatis pada jadwal, Anda perlu meneruskan ekspresi cron yang valid ke skrip menggunakan atribut --cron :
npm run grab -- --site=example.com --cron= " 0 0 * * * " Jika Anda telah mengunduh kode repositori sesuai dengan instruksi di atas, maka untuk memperbaruinya akan cukup untuk menjalankan perintah:
git pullDan kemudian perbarui semua dependensi:
npm installDaftar putar dengan panduan yang sudah terhubung dapat ditemukan di repositori IPTV-org/IPTV.
Semua data saluran diambil dari repositori IPTV-org/database. Jika Anda menemukan kesalahan, silakan buka masalah baru di sana.
Dokumentasi API dapat ditemukan di repositori IPTV-org/API.
Tautan ke sumber daya terkait IPTV lain yang berguna dapat ditemukan di repositori IPTV-org/Awesome-Import.
Jika Anda memiliki pertanyaan atau ide, Anda dapat mempostingnya di tab Diskusi.
Pastikan untuk membaca panduan yang berkontribusi sebelum mengirimkan masalah atau permintaan tarik.
Dan terima kasih untuk semua orang yang telah berkontribusi!