Ferramentas para baixar o EPG (guia do programa eletrônico) para milhares de canais de TV de centenas de fontes.
Primeiro, você precisa instalar o Node.js no seu computador. Você também precisará instalar o Git para seguir estas instruções.
Depois disso, abra o console (ou terminal se você tiver macOS) e digite o seguinte comando:
git clone --depth 1 -b master https://github.com/iptv-org/epg.git Em seguida, navegue para a pasta epg baixada:
cd epgE instalar todas as dependências:
npm installPara iniciar o download do guia, selecione um dos sites suportados e colar seu nome no comando abaixo:
npm run grab -- --site=example.com E assim que o download estiver concluído, o guia será salvo no arquivo 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)Você pode disponibilizar o guia via URL executando seu próprio servidor:
npm run serveDepois disso, o guia estará disponível no link:
http://localhost:3000/guide.xml
Além disso, estará disponível para outros dispositivos na mesma rede local no endereço:
http://<your_local_ip_address>:3000/guide.xml
Por padrão, o guia para cada canal é baixado um por um, mas você pode alterar esse comportamento aumentando o número de solicitações simultâneas usando o atributo --maxConnections :
npm run grab -- --site=example.com --maxConnections=10Mas esteja ciente de que, sob carga pesada, alguns sites podem começar a retornar um erro ou bloquear completamente seu acesso.
Crie um arquivo XML e copie as descrições de todos os canais necessários dos /sites para ele:
<? 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 > E, em seguida, especifique o caminho para esse arquivo através do atributo --channels :
npm run grab -- --channels=path/to/custom.channels.xml Se você deseja --cron o guia automaticamente em uma programação, precisar
npm run grab -- --site=example.com --cron= " 0 0 * * * " Se você baixou o código do repositório de acordo com as instruções acima, para atualizá -lo será suficiente para executar o comando:
git pullE atualize todas as dependências:
npm installListas de reprodução com guias já vinculadas podem ser encontradas no repositório IPTV-ORG/IPTV.
Todos os dados do canal são obtidos do repositório IPTV-ORG/Database. Se você encontrar algum erro, abra um novo problema lá.
A documentação da API pode ser encontrada no repositório IPTV-ORG/API.
Os links para outros recursos úteis relacionados ao IPTV podem ser encontrados no repositório IPTV-ORG/Awesome-IPTV.
Se você tiver uma pergunta ou uma ideia, poderá publicá -la na guia Discussões.
Certifique -se de ler o guia contribuinte antes de enviar problemas ou uma solicitação de tração.
E obrigado a todos que já contribuíram!