Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 13, 2022 10:39:39

satfan
Зарегистрирован: 2019-02-02
Сообщения: 140
Репутация: +  -2  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

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

Офлайн

#2 Фев. 13, 2022 12:02:01

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

 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 надеюсь модифицировать под открытее файла сумеете если че то



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Фев. 13, 2022 12:10:03)

Офлайн

#3 Фев. 13, 2022 13:00:03

satfan
Зарегистрирован: 2019-02-02
Сообщения: 140
Репутация: +  -2  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

Спасибо 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 ?

Офлайн

#4 Фев. 13, 2022 15:58:29

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

что в playlists у вас
покажите



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Фев. 13, 2022 15:58:39)

Офлайн

#5 Фев. 13, 2022 17:29:47

satfan
Зарегистрирован: 2019-02-02
Сообщения: 140
Репутация: +  -2  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

Спасибо AD0DE412
В папке playlists может быть много любых плейлистов .m3u

Прикреплённый файлы:
attachment UPITERR.m3u (88,8 KБ)

Офлайн

#6 Фев. 13, 2022 17:55:46

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

нет я про перменую



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#7 Фев. 13, 2022 18:00:17

satfan
Зарегистрирован: 2019-02-02
Сообщения: 140
Репутация: +  -2  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

Извините не понял вопрос – нет я про перменую

Офлайн

#8 Фев. 13, 2022 18:08:21

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

ок предпологаю что в 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)
        
пробуйте у меня не начем тестить



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Фев. 13, 2022 19:43:27)

Офлайн

#9 Фев. 13, 2022 18:15:28

satfan
Зарегистрирован: 2019-02-02
Сообщения: 140
Репутация: +  -2  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

Спасибо
Выдаёт ошибку:
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

Офлайн

#10 Фев. 13, 2022 19:42:28

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Скрипт очистки плейлиста.

пшет мол нет такого пути попробуйте исправленное (так то делаю все вслепую)



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Фев. 13, 2022 19:45:04)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version