Найти - Пользователи
Полная версия: Скрипт очистки плейлиста.
Начало » Python для новичков » Скрипт очистки плейлиста.
1 2
satfan
IDLE (Python 3.10 64-bit)
Windows 10
—————————-
Есть плейлист IPTV:
#EXTINF:-1 tvg-id=“v-mire-zhivotnyx-hd” tvg-name=“В мире животных HD” group-title=“Познавательные” tvg-logo="https://iptvxpix.ml/v-mire-zhivotnyx.png",В мире животных HD
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/vmirezhivotnix/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1 tvg-id=“2627” tvg-name=“Диалоги о рыбалке” group-title=“Познавательные” tvg-logo="https://dvb.by/sources/logos/3294.png",Диалоги о рыбалке
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/dialogi/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1 tvg-id=“55” tvg-name=“Ocean TV” group-title=“Познавательные” tvg-logo="https://iptvxpix.ml/ocean-tv.png",Ocean TV
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/OCEANTV/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
—————————-
Нужен простой скрипт для удаления ненужного из этого плейлиста.
Должно в итоге получится так:
#EXTINF:-1,В мире животных HD
http://bigteisti2.lifeyosso.fun:56374/vmirezhivotnix/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1,Диалоги о рыбалке
http://bigteisti2.lifeyosso.fun:56374/dialogi/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1,Ocean TV
http://bigteisti2.lifeyosso.fun:56374/OCEANTV/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
—————————-
Что мы должны сделать:
1. В строке: #EXTINF:-1, ….. удалить всё до запятой за которой идёт название канала.
2. Удалить полностью строки: #EXTGRP: Здесь могут меняться названия групп (#EXTGRP:Познавательные #EXTGRP:Новостные и т.д)
—————————-
Я ранее очищал Notepad++ так, не всегда срабатывает:
Открыть регулярные выражения.
В том же Notepad++ например, есть “Поиск” –> “Замена”, поставить галочку “Регулярные выражения” и ввести в строку поиска например:
Найти: #EXTINF:-1
AD0DE412
 import re
txt = """
#EXTINF:-1 tvg-id=“v-mire-zhivotnyx-hd” tvg-name=“В мире животных HD” group-title=“Познавательные” tvg-logo="https://iptvxpix.ml/v-mire-zhivotnyx.png",В мире животных HD
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/vmirezhivotnix/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1 tvg-id=“2627” tvg-name=“Диалоги о рыбалке” group-title=“Познавательные” tvg-logo="https://dvb.by/sources/logos/3294.png",Диалоги о рыбалке
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/dialogi/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1 tvg-id=“55” tvg-name=“Ocean TV” group-title=“Познавательные” tvg-logo="https://iptvxpix.ml/ocean-tv.png",Ocean TV
#EXTGRP:Познавательные
http://bigteisti2.lifeyosso.fun:56374/OCEANTV/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
"""
txt = re.sub(r"( tvg-id.*).(\,)", ',', txt)
txt = re.sub(r"(#EXTGRP.*).(\n)", '', txt)
print(txt)
 #EXTINF:-1,В мире животных HD
http://bigteisti2.lifeyosso.fun:56374/vmirezhivotnix/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1,Диалоги о рыбалке
http://bigteisti2.lifeyosso.fun:56374/dialogi/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
#EXTINF:-1,Ocean TV
http://bigteisti2.lifeyosso.fun:56374/OCEANTV/video.m3u8?token=SXZhbnx8TXpRMVpYSjBaR1pu
ps надеюсь модифицировать под открытее файла сумеете если че то
satfan
Спасибо AD0DE412.
Есть такой скрипт:
 # -*- coding: utf-8 -*
import requests
import os
from os import listdir
from os.path import isfile, join
import re
# создаем папку playlists если ее нет
if not os.path.isdir('playlists'):
    os.mkdir('playlists')
	
    main()
# получаем список файлов плейлистов из папки playlists
playlists = [f for f in listdir('playlists') if isfile(join('playlists', f))]
————————-AD0DE412

Там в папке playlists может быть много плейлистов с расширением: .m3u
Как вашу функцию добавить, чтобы поочерёдно были очищены все плейлисты в папке playlists ?
AD0DE412
что в playlists у вас
покажите
satfan
Спасибо AD0DE412
В папке playlists может быть много любых плейлистов .m3u
AD0DE412
нет я про перменую
satfan
Извините не понял вопрос – нет я про перменую
AD0DE412
ок предпологаю что в playlists у вас список путей к файлам m3u
 # -*- coding: utf-8 -*
import requests
import os
from os import listdir
from os.path import isfile, join
import re
# создаем папку playlists если ее нет
if not os.path.isdir('playlists'):
    os.mkdir('playlists')
	
    main()
# получаем список файлов плейлистов из папки playlists
playlists = [f for f in listdir('playlists') if isfile(join('playlists', f))]
for i in playlists:
    with open(f'playlists/{i}') as file_in:
        txt = file_in.read()
        txt = re.sub(r"( tvg-id.*).(\,)", ',', txt)
        txt = re.sub(r"(#EXTGRP.*).(\n)", '', txt)
        with open(f'out_{i}', 'w') as file_out:
            file_out.write(txt)
        
пробуйте у меня не начем тестить
satfan
Спасибо
Выдаёт ошибку:
Traceback (most recent call last):
File “C:\Users\Пк\Desktop\cleaning_plist\2.py”, line 15, in <module>
with open(i) as file_in:
FileNotFoundError: No such file or directory: ‘UPITERR.m3u’
—————–
В папке playlists у меня лежит только этот один файл: UPITERR.m3u
AD0DE412
пшет мол нет такого пути попробуйте исправленное (так то делаю все вслепую)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB