Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 5, 2019 14:22:20

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

Сканер готовых IPTV листов

Уважаемые подскажите.
Запускаю в Python27 скрипт.
==============================
# -*- coding: UTF-8 -*-

import re
import sys

try:

in_m3u = str(sys.argv);
print “Received input is : ”, in_m3u
except:
print “Input 2 args as ./111.py input.m3u”

list = # Список с содкржимым входящего файла
list2 =
namen_list=
new_list=

def udalenie_pust(input_file):
for line in input_file.readlines():
line = line.strip()
if line == ‘':
print “”
pass
if line == ’#EXTM3U':
print “”
pass
else:
list.append(line + ‘\n’)
file.close()
return list

def full_dup():
a = len(list)
a1 = a
i = 0
while i < a-1:
b = list
f =
print ‘f’,f
print “b”, b
k=len(f)
while k > 1:
print k, f
try:
list.pop(f)
except:
Exception
k = k-1
a = len(list)
i = i + 1
print a, i
return list

def adr_dup():# Удаление дубликатов по адресу
a = len(new_list)
i = 0
while i < a-1:
b = new_list
http = re.search('^http/', str(b))
if http != None:
f =
k=len(f)
h=0
while k > 1:
#print “F:”,f,'\n',“H:”, h,'\n' "f:", f,'\n' "list[f-1]:", new_list[f-1] ,'\n' "list[f]:", new_list[f]
new_list[f] = “”
new_list[f-1] = “”
f =
k=len(f)
if k == 1:
pass
else:
k = k-1
#h=h+1

a = len(new_list)
i = i + 1
return new_list


def nam_list():
print “start create namen_list”
a = len(list)
a1 = a
i = 0
while i < a-1: # Создаём список из чистых имён каналов и добавляем каждую вторую пустую строку
b = str(list)
findest1 = b.split(',')
namen=findest1.strip()
n = re.search('^#EXTINF', str(b))
if n:
if str(namen) != ‘ ’:
findest1 = str(b).split(',')
nam=findest1
namen = nam.strip()
namen_list.append(namen)
namen_list.append('')
else:
pass
i = i + 1
# print namen_list, len(namen_list)
return namen_list


def name_dup():

a = len(list) # Количечтво в исходном списке
i = 0 # Счётчик для основного списка LIST
while i < a-1:# Начинаеи перебирпть основной список
b=list # Элемент из основного списка например #EXTINF:0, Первый
b1 = list
n=namen_list
f =
k=len(f)
if k > 1 and n !='':# Есть дубли
#print “Дубль”, f,k,n
t=0
while t <= k-1: # Работаем со списком дубликатов
#print “Добавляем дубль”
#print “1”, list[f]
pure_nam = list[f].split(',')
pure_nam1 = pure_nam.strip()
pure_nam2 = str(pure_nam)+','+str(pure_nam1)+'\n'
#print “2”, pure_nam2
new_list.append(pure_nam2)
new_list.append(list[f+1])
t=t+1
#
# #print “2”, list[f],list[f+1]
if k == 1 and n !='':
#print “Один”, list
pure_nam = b.split(',')
#print “pure_nam”, pure_nam
pure_nam1 = pure_nam.strip()
p_nam2 = str(pure_nam)+','+str(pure_nam1)+'\n'
new_list.append(p_nam2)
new_list.append(b1)


i=i+1

return new_list


def zapis_out_file(In_list):
i_m3u = in_m3u.split('.m3u')
out_m3u = i_m3u+'_pure'+'.m3u'
file1 = open(out_m3u, “w”)
a = len(In_list)
print “Save In_list”, a
# file1.write(“#EXTM3U”)
i = 0
while i <= a-1:
file1.write(str(In_list))
i = i + 1
file1.close()

file = open(in_m3u, “r”)
udalenie_pust(file)
nam_list()
name_dup()
adr_dup()
zapis_out_file(new_list)

==================================
Выдаёт ошибку:

Прикреплённый файлы:
attachment Screenshot_1.png (15,5 KБ)

Офлайн

#2 Фев. 7, 2019 08:28:24

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2267
Репутация: +  41  -
Профиль   Отправить e-mail  

Сканер готовых IPTV листов

ну вам же пишет что у вас каша из табов и пробелов в файле, проблема в форматировании кода

Офлайн

#3 Фев. 7, 2019 08:39:01

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

Сканер готовых IPTV листов

Уважаемый slav0nic
Спасибо.
1. Ссылка Ваша не открывается.
2. Подскажите как исправить ?

Офлайн

#4 Фев. 7, 2019 09:56:18

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Сканер готовых IPTV листов

satfan
Подскажите как исправить ?
очевидно же, заменить все табы на 4*пробел, (или наоборот, что нежелательно)



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#5 Фев. 8, 2019 11:18:19

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

Сканер готовых IPTV листов

Уважаемый PEHDOM.
Проверял код здесь: http://codepad.org
Выдало 1 ошибку.
==========================
Line 9
print “Received input is : ”, in_m3u
^
SyntaxError: invalid syntax
==========================
Подскажите.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version