Update iptv_udp.py

This commit is contained in:
frxz751113
2024-08-12 16:52:08 +08:00
committed by GitHub
parent 3a66744163
commit 0b26044a6a
+10 -10
View File
@@ -279,7 +279,7 @@ def main():
# 移除文件 # 移除文件
# os.remove('playlist/' + file_path) # os.remove('playlist/' + file_path)
# 写入合并后的txt文件 # 写入合并后的txt文件
with open("playlist/IPTV_UDP", "w", encoding="utf-8") as output: with open("playlist/IPTV_UDP.txt", "w", encoding="utf-8") as output:
output.write('\n\n'.join(file_contents)) output.write('\n\n'.join(file_contents))
# 写入更新日期时间 # 写入更新日期时间
# file.write(f"{now_today}更新,#genre#\n") # file.write(f"{now_today}更新,#genre#\n")
@@ -291,12 +291,12 @@ def main():
output.write(f"{now.strftime("%Y-%m-%d")},url\n") output.write(f"{now.strftime("%Y-%m-%d")},url\n")
output.write(f"{now.strftime("%H:%M:%S")},url\n") output.write(f"{now.strftime("%H:%M:%S")},url\n")
output.close() output.close()
print(f"电视频道成功写入IPTV_UDP") print(f"电视频道成功写入IPTV_UDP.txt")
main() main()
######################################################################################################################################################################################## ########################################################################################################################################################################################
for line in fileinput.input("playlist/IPTV_UDP", inplace=True): #打开文件,并对其进行关键词原地替换 for line in fileinput.input("playlist/IPTV_UDP.txt", inplace=True): #打开文件,并对其进行关键词原地替换
line = line.replace("CHC电影", "CHC影迷电影") line = line.replace("CHC电影", "CHC影迷电影")
line = line.replace("高清电影", "影迷电影") line = line.replace("高清电影", "影迷电影")
print(line, end="") #设置end="",避免输出多余的换行符 print(line, end="") #设置end="",避免输出多余的换行符
@@ -306,7 +306,7 @@ print(f"文件已替换完成")
#################文本排序 #################文本排序
# 打开原始文件读取内容,并写入新文件 # 打开原始文件读取内容,并写入新文件
with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file: with open('playlist/IPTV_UDP.txt', 'r', encoding='utf-8') as file:
lines = file.readlines() lines = file.readlines()
@@ -323,7 +323,7 @@ sorted_lines = sorted(lines, key=lambda x: (not 'CCTV' in x, extract_first_numbe
output_file_path = "sorted_" + os.path.basename(file_path) output_file_path = "sorted_" + os.path.basename(file_path)
# 写入新文件 # 写入新文件
with open('playlist/IPTV_UDP', "w", encoding="utf-8") as file: with open('playlist/IPTV_UDP.txt', "w", encoding="utf-8") as file:
for line in sorted_lines: for line in sorted_lines:
file.write(line) file.write(line)
@@ -335,7 +335,7 @@ print(f"文件已排序并保存")
keywords = ['CCTV', '剧场', '影院', '电影'] # 需要提取的关键字列表 keywords = ['CCTV', '剧场', '影院', '电影'] # 需要提取的关键字列表
pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字 pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字
#pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制 #pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制
with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file, open('c0.txt', 'w', encoding='utf-8') as c0: #定义临时文件名 with open('playlist/IPTV_UDP.txt', 'r', encoding='utf-8') as file, open('c0.txt', 'w', encoding='utf-8') as c0: #定义临时文件名
c0.write('\组播央视,#genre#\n') #写入临时文件名$GD c0.write('\组播央视,#genre#\n') #写入临时文件名$GD
for line in file: for line in file:
if re.search(pattern, line): # 如果行中有任意关键字 if re.search(pattern, line): # 如果行中有任意关键字
@@ -345,7 +345,7 @@ with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file, open('c0.txt', 'w
keywords = ['爱动漫', '爱怀旧', '爱经典', '爱科幻', '爱幼教', '爱青春', '爱院线', '爱悬疑'] # 需要提取的关键字列表 keywords = ['爱动漫', '爱怀旧', '爱经典', '爱科幻', '爱幼教', '爱青春', '爱院线', '爱悬疑'] # 需要提取的关键字列表
pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字 pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字
#pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制 #pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制
with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file, open('c1.txt', 'w', encoding='utf-8') as c1: #定义临时文件名 with open('playlist/IPTV_UDP.txt', 'r', encoding='utf-8') as file, open('c1.txt', 'w', encoding='utf-8') as c1: #定义临时文件名
c1.write('\组播央视,#genre#\n') #写入临时文件名$GD c1.write('\组播央视,#genre#\n') #写入临时文件名$GD
for line in file: for line in file:
if '$GD' not in line and '4K' not in line: if '$GD' not in line and '4K' not in line:
@@ -359,7 +359,7 @@ keywords = ['河北', '石家庄', '丰宁', '临漳', '井陉', '井陉矿区',
'邱县', '隆化', '雄县', '阜平', '高碑店', '高邑', '魏县', '黄骅', '饶阳', '赵县', '睛彩河北', '滦南', '玉田', '崇礼', '平泉', '容城', '文安', '三河', '清河'] # 需要提取的关键字列表 '邱县', '隆化', '雄县', '阜平', '高碑店', '高邑', '魏县', '黄骅', '饶阳', '赵县', '睛彩河北', '滦南', '玉田', '崇礼', '平泉', '容城', '文安', '三河', '清河'] # 需要提取的关键字列表
pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字 pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字
#pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制 #pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制
with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file, open('f.txt', 'w', encoding='utf-8') as f: #定义临时文件名 with open('playlist/IPTV_UDP.txt', 'r', encoding='utf-8') as file, open('f.txt', 'w', encoding='utf-8') as f: #定义临时文件名
f.write('\n河北频道,#genre#\n') #写入临时文件名 f.write('\n河北频道,#genre#\n') #写入临时文件名
for line in file: for line in file:
if 'CCTV' not in line and '卫视' not in line and 'CHC' not in line and '4K' not in line and 'genre' not in line: if 'CCTV' not in line and '卫视' not in line and 'CHC' not in line and '4K' not in line and 'genre' not in line:
@@ -371,7 +371,7 @@ keywords = ['河南', '焦作', '开封', '卢氏', '洛阳', '孟津', '安阳'
'新密', '新乡', '信阳', '新郑', '延津', '叶县', '义马', '永城', '禹州', '原阳', '镇平', '郑州', '周口'] # 需要提取的关键字列表 '新密', '新乡', '信阳', '新郑', '延津', '叶县', '义马', '永城', '禹州', '原阳', '镇平', '郑州', '周口'] # 需要提取的关键字列表
pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字 pattern = '|'.join(keywords) # 创建正则表达式模式,匹配任意一个关键字
#pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制 #pattern = r"^(.*?),(?!#genre#)(.*?)$" #以分类直接复制
with open('playlist/IPTV_UDP', 'r', encoding='utf-8') as file, open('f1.txt', 'w', encoding='utf-8') as f1: #定义临时文件名 with open('playlist/IPTV_UDP.txt', 'r', encoding='utf-8') as file, open('f1.txt', 'w', encoding='utf-8') as f1: #定义临时文件名
f1.write('\n河南频道,#genre#\n') #写入临时文件名 f1.write('\n河南频道,#genre#\n') #写入临时文件名
for line in file: for line in file:
if 'CCTV' not in line and '卫视' not in line and 'CHC' not in line and '4K' not in line and 'genre' not in line: if 'CCTV' not in line and '卫视' not in line and 'CHC' not in line and '4K' not in line and 'genre' not in line:
@@ -583,7 +583,7 @@ def txt_to_m3u(input_file, output_file):
# 将txt文件转换为m3u文件 # 将txt文件转换为m3u文件
txt_to_m3u('综合源.txt', '综合源.m3u') txt_to_m3u('综合源.txt', '综合源.m3u')
#任务结束,删除不必要的过程文件# #任务结束,删除不必要的过程文件#
files_to_remove = ["TW.txt", "a.txt", "a0.txt", "港澳.txt", "playlist/IPTV_UDP", "df0.txt", "sr1.txt", "c0.txt", "c1.txt", \ files_to_remove = ["TW.txt", "a.txt", "a0.txt", "港澳.txt", "playlist/IPTV_UDP.txt", "df0.txt", "sr1.txt", "c0.txt", "c1.txt", \
"f.txt", "f1.txt", "playlist/酒店源#.txt"] "f.txt", "f1.txt", "playlist/酒店源#.txt"]
for file in files_to_remove: for file in files_to_remove:
if os.path.exists(file): if os.path.exists(file):