├── AajTak.m3u8 ├── NDTV247.m3u8 ├── WB_Kids.m3u8 ├── WION.m3u8 ├── CNNNews18.m3u8 ├── RepublicWorld.m3u8 ├── DisneyJunior_CH1.m3u8 ├── DisneyJunior_CH2.m3u8 ├── AajTak_info.txt ├── CNNNews18_info.txt ├── DisneyJunior_CH1_info.txt ├── DisneyJunior_CH2_info.txt ├── WION_info.txt ├── NDTV247_info.txt ├── WB_Kids_info.txt ├── WION.sh ├── AajTak.sh ├── RepublicWorld_info.txt ├── NDTV247.sh ├── WB_Kids.sh ├── CNNNews18.sh ├── RepublicWorld.sh ├── DisneyJunior_CH1.sh ├── DisneyJunior_CH2.sh ├── LICENSE ├── .github └── workflows │ ├── WION.yml │ ├── AajTak.yml │ ├── NDTV247.yml │ ├── WB_Kids.yml │ ├── RepublicWorld.yml │ ├── DisneyJunior_CH1.yml │ └── DisneyJunior_CH2.yml └── scripts ├── WION.py ├── AajTak.py ├── CNNNews18.py ├── NDTV247.py ├── WB_Kids.py ├── RepublicWorld.py ├── DisneyJunior_CH1.py └── DisneyJunior_CH2.py /AajTak.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /NDTV247.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /WB_Kids.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /WION.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /CNNNews18.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /RepublicWorld.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /DisneyJunior_CH1.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /DisneyJunior_CH2.m3u8: -------------------------------------------------------------------------------- 1 | #EXTM3U 2 | #EXT-X-VERSION:3 3 | #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000 4 | https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8 5 | -------------------------------------------------------------------------------- /AajTak_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UCt4t-jeY85JegMlZ-E5UWtA/live 6 | -------------------------------------------------------------------------------- /CNNNews18_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UCef1-8eOpJgud7szVPlZQAQ 6 | -------------------------------------------------------------------------------- /DisneyJunior_CH1_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/watch?v=h99SrJB7F5M/live 6 | -------------------------------------------------------------------------------- /DisneyJunior_CH2_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/watch?v=5aglJRVC9ts/live 6 | -------------------------------------------------------------------------------- /WION_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UC_gUM8rL-Lrg6O3adPW9K1g/live 6 | -------------------------------------------------------------------------------- /NDTV247_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UCZFMm1mMw0F81Z37aaEzTUA/live 6 | -------------------------------------------------------------------------------- /WB_Kids_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UC9trsD1jCTXXtN3xIOIU8gg/live 6 | -------------------------------------------------------------------------------- /WION.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 WION.py > ../WION.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /AajTak.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 AajTak.py > ../AajTak.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /RepublicWorld_info.txt: -------------------------------------------------------------------------------- 1 | ~~ DO NOT EDIT THE FIRST 2 LINES 2 | ~~ FORMAT: | | | 3 | 4 | 1 | 1 | | 5 | https://www.youtube.com/channel/UCwqusr8YDwM-3mEYTDeJHzw/live 6 | -------------------------------------------------------------------------------- /NDTV247.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 NDTV247.py > ../NDTV247.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /WB_Kids.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 WB_Kids.py > ../WB_Kids.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /CNNNews18.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 CNNNews18.py > ../CNNNews18.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /RepublicWorld.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 RepublicWorld.py > ../RepublicWorld.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /DisneyJunior_CH1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 DisneyJunior_CH1.py > ../DisneyJunior_CH1.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /DisneyJunior_CH2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo $(dirname $0) 4 | 5 | python3 -m pip install requests 6 | 7 | cd $(dirname $0)/scripts/ 8 | 9 | python3 DisneyJunior_CH2.py > ../DisneyJunior_CH2.m3u8 10 | 11 | echo m3u grabbed 12 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 pshanmu3 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.github/workflows/WION.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: WION 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x WION.sh 45 | ./WION.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/AajTak.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: AajTak 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x AajTak.sh 45 | ./AajTak.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/NDTV247.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: NDTV24x7 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x NDTV247.sh 45 | ./NDTV247.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/WB_Kids.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: WB_Kids 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x WB_Kids.sh 45 | ./WB_Kids.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/RepublicWorld.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: RepublicWorld 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x RepublicWorld.sh 45 | ./RepublicWorld.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/DisneyJunior_CH1.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: DisneyJunior_CH1 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x DisneyJunior_CH1.sh 45 | ./DisneyJunior_CH1.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /.github/workflows/DisneyJunior_CH2.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: DisneyJunior_CH2 4 | 5 | # Controls when the action will run. 6 | on: 7 | schedule: 8 | - cron: '0 0/3 * * *' 9 | 10 | pull_request: 11 | branches: 12 | - main 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 27 | - uses: actions/checkout@v2 28 | 29 | # Runs a single command using the runners shell 30 | #- name: Run a one-line script 31 | # run: echo testing! 32 | 33 | # Runs a set of commands using the runners shell 34 | - name: config 35 | run: | 36 | git pull 37 | git config --global user.email "naveen.land4@gmail.com" 38 | git config --global user.name "naveenland4" 39 | 40 | 41 | - name: Main 42 | run: | 43 | pwd 44 | chmod +x DisneyJunior_CH2.sh 45 | ./DisneyJunior_CH2.sh 46 | 47 | - name: git add 48 | run: | 49 | git add -A 50 | ls -la 51 | 52 | - name: commit & push 53 | run: | 54 | git commit -m "Link updated" 55 | git push 56 | 57 | 58 | -------------------------------------------------------------------------------- /scripts/WION.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../WION_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/AajTak.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../AajTak_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/CNNNews18.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../CNNNews18_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/NDTV247.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../NDTV247_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/WB_Kids.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../WB_Kids_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/RepublicWorld.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../RepublicWorld_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/DisneyJunior_CH1.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../DisneyJunior_CH1_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | -------------------------------------------------------------------------------- /scripts/DisneyJunior_CH2.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python3 2 | 3 | 4 | import requests 5 | import os 6 | import sys 7 | 8 | windows = False 9 | if 'win' in sys.platform: 10 | windows = True 11 | 12 | def grab(url): 13 | response = s.get(url, timeout=15).text 14 | if '.m3u8' not in response: 15 | if windows: 16 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 17 | return 18 | os.system(f'wget {url} -O temp.txt') 19 | response = ''.join(open('temp.txt').readlines()) 20 | if '.m3u8' not in response: 21 | print('https://raw.githubusercontent.com/naveenland4/UTLive/main/assets/info.m3u8') 22 | return 23 | end = response.find('.m3u8') + 5 24 | tuner = 100 25 | while True: 26 | if 'https://' in response[end-tuner : end]: 27 | link = response[end-tuner : end] 28 | start = link.find('https://') 29 | end = link.find('.m3u8') + 5 30 | break 31 | else: 32 | tuner += 5 33 | streams = s.get(link[start:end]).text.split('#EXT') 34 | hd = streams[-1].strip() 35 | st = hd.find('http') 36 | print(hd[st:].strip()) 37 | #print(f"{link[start : end]}") 38 | 39 | print('#EXTM3U') 40 | print('#EXT-X-VERSION:3') 41 | print('#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000') 42 | s = requests.Session() 43 | with open('../DisneyJunior_CH2_info.txt') as f: 44 | for line in f: 45 | line = line.strip() 46 | if not line or line.startswith('~~'): 47 | continue 48 | if not line.startswith('https:'): 49 | line = line.split('|') 50 | ch_name = line[0].strip() 51 | grp_title = line[1].strip().title() 52 | tvg_logo = line[2].strip() 53 | tvg_id = line[3].strip() 54 | else: 55 | grab(line) 56 | 57 | if 'temp.txt' in os.listdir(): 58 | os.system('rm temp.txt') 59 | os.system('rm watch*') 60 | --------------------------------------------------------------------------------