Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: 将订阅地址添加到whitelist.txt中,排序结果没有将订阅地址中的频道排到第一 #724

Closed
4 of 7 tasks
raynlong opened this issue Dec 23, 2024 · 12 comments
Labels
bug Something isn't working

Comments

@raynlong
Copy link

Don't skip these steps | 不要跳过这些步骤

  • I understand that I will be blocked if I intentionally remove or skip any mandatory* field | 我明白,如果我“故意”删除或跳过任何强制性的*字段,我将被封锁
  • I have checked through the search that there are no similar issues that already exist | 我已经通过搜索仔细检查过没有存在已经创建的相似问题
  • I will not submit any issues that are not related to this project | 我不会提交任何与本项目无关的问题

Occurrence environment | 触发环境

  • Workflow | 工作流
  • GUI | 软件
  • Docker
  • Command line | 命令行

Bug description | 具体描述

环境:X86-64-deepin-1panel-docker,whitelist.txt如下图:
image
订阅地址打开如下:
image
输出结果如下:
image
输出结果的第一位不是订阅地址的CCTV-1对应的地址。请问whitelist.txt是这样用的吗?感谢大佬解惑。

白名单地址:https://m3u.ibert.me/txt/fmml_ipv6.txt

Error log | 报错日志

No response

@raynlong raynlong added the bug Something isn't working label Dec 23, 2024
Guovin added a commit that referenced this issue Dec 23, 2024
@Guovin
Copy link
Owner

Guovin commented Dec 23, 2024

你的操作没有问题,经排查,是因为多个订阅地址中同时都含有了相同的白名单接口,导致白名单接口被覆盖而失效,我已经修复该问题,等下一版本更新即可。

@raynlong
Copy link
Author

没想到这么快回复,感谢大佬,让父母能安稳看电视。我自己试着用linux脚本把fmml_ipv6.txt下载下来,然后插到最终结果之前有了暂时的解决方案。代码用豆包生成,有需要的也可以试试。
#!/bin/bash

定义目标网址

url="https://m3u.ibert.me/txt/fmml_ipv6.txt"

定义原始文件保存的本地目录及文件名

original_file_path="/home/Rayn/docker/iptv-api/output/fmml_ipv6.txt"

定义修改后文件保存的本地目录及新文件名

new_file_path="/home/Rayn/docker/iptv-api/output/zb-fmm.txt"

定义zb.txt文件路径

zb_file="/home/Rayn/docker/iptv-api/output/zb.txt"

定义合并后输出文件路径

output_file="/home/Rayn/docker/iptv-api/output/zb-cs.txt"

步骤1:使用wget命令并强制指定使用IPv4地址下载指定网址的txt文件到指定本地目录

wget --inet4-only -O $original_file_path $url

步骤2:使用sed命令进行文本修改操作,删除文件里面以"_"开头,到","之间的全部字符

sed -i 's/_[^,]*//g' $original_file_path

步骤3:使用sed命令删除以特定频道开头的整行字符,多个频道使用|进行分隔表示或的关系

sed -i '/^CGTN|^三沙卫视|^农林卫视|^延边卫视|^安多卫视|^康巴卫视|^大湾区卫视/d' $original_file_path

步骤4:使用sed命令删除包含"内蒙频道"所在行及后面所有行的内容

sed -i '/内蒙频道/,$d' $original_file_path

步骤5:使用sed命令,当一行数据中包含"http"字符时,在行末尾增加字符"$-fmm源"

sed -i '/http/s/$/$fmm源/' $original_file_path

步骤6:将修改后的文件另存为新文件名到指定目录

cp $original_file_path $new_file_path

步骤7:删除原始文件

rm $original_file_path

使用awk进行文件合并操作

awk -F ',' '
NR == FNR {
# 处理zb-fmm.txt文件,将数据存储到数组中,以频道名为索引
channel_data[$1] = $0;
next;
}
{
# 处理zb.txt文件
if ($1 in channel_data) {
print channel_data[$1];
}
print $0;
}' $new_file_path $zb_file > $output_file

使用awk删除zb-cs.txt中的重复行

awk '!seen[$0]++' $output_file > /home/Rayn/docker/iptv-api/output/temp_zb-cs.txt
mv /home/Rayn/docker/iptv-api/output/temp_zb-cs.txt $output_file

@Guovin Guovin mentioned this issue Dec 23, 2024
@Guovin
Copy link
Owner

Guovin commented Dec 23, 2024

更新镜像后就无需这样操作了

@raynlong
Copy link
Author

好的,坐等更新,大佬有计划什么时候更新吗?

@Guovin
Copy link
Owner

Guovin commented Dec 23, 2024

好的,坐等更新,大佬有计划什么时候更新吗?

预计今晚到明天上午

@buzhixihuan2021
Copy link

好的,坐等更新,大佬有计划什么时候更新吗?

预计今晚到明天上午

CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000010000030810/1.m3u8$LR•IPV6『线路1』
CCTV1,http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010144/1.m3u8$LR•IPV6『线路2』
CCTV1,http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010011/1.m3u8$LR•IPV6『线路3』
CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000021973/1.m3u8$LR•IPV6『线路4』
CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000004000002226/1.m3u8$LR•IPV6『线路5』
CCTV1,http://101.66.199.47:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路6』
CCTV1,http://221.213.69.82:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路7』
CCTV1,http://101.66.199.73:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路8』


可以增加变成 线路几 这样的 格式嘛。电视手动换线路的时候在右下角可以 清楚看见换到线路几了。目前电视右下角换线路全部都显示IPV6

@w1365258
Copy link

你的操作没有问题,经排查,是因为多个订阅地址中同时都含有了相同的白名单接口,导致白名单接口被覆盖而失效,我已经修复该问题,等下一版本更新即可。

大佬,下一版本能增加重命令规则吗?单独出一个规则表进行自定义频道名称。很多订阅源频道频道名称多样化,导致无法获取。加载完接口数据添加重命令,逻辑格式这样:CCTV1(CCTV-1,CCTV1_电信,CCTV01),历遍后将()里所有频道名称重命令再测速,这样用户即可以定制频道名称,又不缺失频道接口

@raynlong
Copy link
Author

raynlong commented Dec 24, 2024

好的,坐等更新,大佬有计划什么时候更新吗?

预计今晚到明天上午

更新了docker,运行日志里有浙江地方频道数据,实际输出无浙江频道数据。然后我发现输出结果文件里,加入白名单的订阅地址在输出cctv1时是排在首位,输出cctv2等后面频道的时候就不是首位了。
IPTV-API-20241224083129.log
image
image
image
image

@Guovin
Copy link
Owner

Guovin commented Dec 24, 2024

你的操作没有问题,经排查,是因为多个订阅地址中同时都含有了相同的白名单接口,导致白名单接口被覆盖而失效,我已经修复该问题,等下一版本更新即可。

大佬,下一版本能增加重命令规则吗?单独出一个规则表进行自定义频道名称。很多订阅源频道频道名称多样化,导致无法获取。加载完接口数据添加重命令,逻辑格式这样:CCTV1(CCTV-1,CCTV1_电信,CCTV01),历遍后将()里所有频道名称重命令再测速,这样用户即可以定制频道名称,又不缺失频道接口

请不要在非本问题下讨论其它内容,若有需求请新建讨论

@Guovin
Copy link
Owner

Guovin commented Dec 24, 2024

好的,坐等更新,大佬有计划什么时候更新吗?

预计今晚到明天上午

CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000010000030810/1.m3u8$LR•IPV6『线路1』 CCTV1,http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010144/1.m3u8$LR•IPV6『线路2』 CCTV1,http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010011/1.m3u8$LR•IPV6『线路3』 CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000021973/1.m3u8$LR•IPV6『线路4』 CCTV1,http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000004000002226/1.m3u8$LR•IPV6『线路5』 CCTV1,http://101.66.199.47:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路6』 CCTV1,http://221.213.69.82:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路7』 CCTV1,http://101.66.199.73:9901/tsfile/live/0001_1.m3u8$LR•IPV4『线路8』

可以增加变成 线路几 这样的 格式嘛。电视手动换线路的时候在右下角可以 清楚看见换到线路几了。目前电视右下角换线路全部都显示IPV6

请不要在非本问题下讨论其它内容,若有需求请新建讨论

@Guovin
Copy link
Owner

Guovin commented Dec 24, 2024

好的,坐等更新,大佬有计划什么时候更新吗?

预计今晚到明天上午

更新了docker,运行日志里有浙江地方频道数据,实际输出无浙江频道数据。然后我发现输出结果文件里,加入白名单的订阅地址在输出cctv1时是排在首位,输出cctv2等后面频道的时候就不是首位了。 IPTV-API-20241224083129.log image image image image

docker完整版还没有上传更新,lite版本已经更新

@Guovin
Copy link
Owner

Guovin commented Dec 24, 2024

最新镜像已经全部上传,可进行拉取了

@Guovin Guovin closed this as completed Dec 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants