OpenWRT抓取EPG并提交记录到代码仓库

文件说明

  • gdtv_to_epg.log 日志文件
  • epg.xml XMLTV格式文件
  • gdtv_to_epg.py 电子节目表抓取
  • git_commit.sh 日志提交脚本文件
  • /etc/init.d/gdtv_to_epg 开机执行脚本
  • /etc/rc.local 开机执行脚本

改清华源

vi /etc/opkg/distfeeds.conf

1
2
3
4
5
6
src/gz openwrt_core http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/targets/ramips/mt7620/packages
src/gz openwrt_base http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/packages/mipsel_24kc/base
src/gz openwrt_luci http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/packages/mipsel_24kc/luci
src/gz openwrt_packages http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/packages/mipsel_24kc/packages
src/gz openwrt_routing http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://mirrors.tuna.tsinghua.edu.cn/lede/releases/23.05.4/packages/mipsel_24kc/telephony

安装配置git

1
2
3
4
5
6
7
8
opkg update
opkg install git
opkg install openssh-keygen
opkg install openssh-client
cd /www
git init
ssh-keygen
ssh -T git@gitee.com

抓取源码

/www/gdtv_to_epg.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
import datetime
import requests
import warnings
import logging
from bs4 import BeautifulSoup as bs
from xml.etree.ElementTree import Element, SubElement, ElementTree

# 日志配置
logging.basicConfig(
filename="/www/gdtv_to_epg.log", # 日志文件路径
level=logging.INFO, # 日志级别
format="%(asctime)s - %(levelname)s - %(message)s",
filemode="w" # 每次运行脚本时覆盖日志
)

# 定义请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}

# 忽略 XMLParsedAsHTMLWarning
warnings.filterwarnings('ignore')

# 获取广东电视台频道列表
def get_channels_gdtv():
logging.info("开始获取频道列表...")
url = 'http://epg.gdtv.cn/f/1.xml'
try:
res = requests.get(url, headers=headers, timeout=8)
res.encoding = 'utf-8'
soup = bs(res.text, 'html.parser')
contents = soup.select('channel')
channels = []
for content in contents:
channel_id = content.attrs['id']
name = content.ctitle.text.strip()
channels.append({'id': channel_id, 'name': name})
logging.info(f"获取到 {len(channels)} 个频道")
return channels
except requests.exceptions.RequestException as e:
logging.error(f"获取频道列表失败: {e}")
return []

# 处理节目标题中的 HTML 实体和标签
def clean_html(text):
text = bs(text, "html.parser").get_text()
return text.replace('<br />', '\n').replace('<br>', '\n').strip()

# 获取指定日期范围内的节目表
def get_epgs_gdtv(channel_id, start_date, end_date):
logging.info(f"开始抓取频道 {channel_id} 的节目表...")
epgs = []
current_date = start_date
while current_date <= end_date:
url = f'http://epg.gdtv.cn/f/{channel_id}/{current_date.strftime("%Y-%m-%d")}.xml'
try:
res = requests.get(url, headers=headers, timeout=8)
res.encoding = 'utf-8'
soup = bs(res.text, 'html.parser')
epgs_contents = soup.select('content')

for epga in epgs_contents:
starttime = datetime.datetime.fromtimestamp(int(epga.attrs['time1']))
endtime = datetime.datetime.fromtimestamp(int(epga.attrs['time2']))
title = clean_html(epga.get_text())
epgs.append({
'title': title,
'start': starttime,
'end': endtime
})
logging.info(f"完成抓取频道 {channel_id} {current_date} 的节目表,共 {len(epgs)} 条节目")
except requests.exceptions.RequestException as e:
logging.error(f"抓取频道 {channel_id} {current_date} 的节目表失败: {e}")
current_date += datetime.timedelta(days=1)
return epgs

# 创建 XMLTV 文件
def create_epg_xml(channels, epg_data, output_file):
logging.info("开始生成 XMLTV 文件...")
tv = Element('tv')

for channel in channels:
channel_element = SubElement(tv, 'channel', id=channel['id'])
display_name = SubElement(channel_element, 'display-name')
display_name.text = channel['name']

for channel_id, programs in epg_data.items():
for program in programs:
programme = SubElement(tv, 'programme', start=program['start'].strftime('%Y%m%d%H%M%S +0800'),
stop=program['end'].strftime('%Y%m%d%H%M%S +0800'),
channel=channel_id)
title = SubElement(programme, 'title')
title.text = program['title']

tree = ElementTree(tv)
tree.write(output_file, encoding='utf-8', xml_declaration=True)
logging.info(f"XMLTV 文件生成完成: {output_file}")

# 主函数
if __name__ == "__main__":
today = datetime.datetime.now().date()
start_date = today - datetime.timedelta(days=6)
end_date = today + datetime.timedelta(days=2)

try:
logging.info("脚本开始执行")

channels = get_channels_gdtv()
if not channels:
logging.error("没有获取到频道列表,脚本将结束执行。")
exit(1) # 如果未获取到频道列表,则退出

epg_data = {}
for channel in channels:
channel_id = channel['id']
epg_data[channel_id] = get_epgs_gdtv(channel_id, start_date, end_date)

output_file = "/www/epg.xml"
create_epg_xml(channels, epg_data, output_file)

logging.info(f"完成!EPG 文件已保存为 {output_file}")
except Exception as e:
logging.error(f"脚本执行过程中发生错误: {e}")


开机脚本

/etc/rc.local

1
2
3
4
5
6
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.

ntpd -q -p pool.ntp.org

exit 0

/etc/init.d/gdtv_to_epg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh /etc/rc.common
# OpenWrt init script for gdtv_to_epg

START=99
USE_PROCD=1

start_service() {
# 第一个任务,延迟 180 秒执行
procd_open_instance
procd_set_param command /bin/sh -c "sleep 180 && /usr/bin/python /www/gdtv_to_epg.py"
procd_set_param network 1
procd_close_instance

# 第二个任务,延迟 480 秒执行
procd_open_instance
procd_set_param command /bin/sh -c "sleep 480 && /bin/sh /www/git_commit.sh"
procd_set_param network 1
procd_close_instance
}

提交脚本

/www/git_commit.sh

1
2
3
4
5
6
#!/bin/sh
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
cd /www || exit 1 # 进入 Git 仓库的工作目录
git add . # 添加所有修改
git commit -m "更新日志" # 提交修改
git push origin master # 推送到远程仓库

日志文件

/www/gdtv_to_epg.log

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
2025-01-02 18:02:36,843 - INFO - 脚本开始执行
2025-01-02 18:02:36,846 - INFO - 开始获取频道列表...
2025-01-02 18:02:37,149 - INFO - 获取到 15 个频道
2025-01-02 18:02:37,154 - INFO - 开始抓取频道 1 的节目表...
2025-01-02 18:02:37,423 - INFO - 完成抓取频道 1 2024-12-27 的节目表,共 28 条节目
2025-01-02 18:02:37,686 - INFO - 完成抓取频道 1 2024-12-28 的节目表,共 58 条节目
2025-01-02 18:02:37,948 - INFO - 完成抓取频道 1 2024-12-29 的节目表,共 88 条节目
2025-01-02 18:02:38,193 - INFO - 完成抓取频道 1 2024-12-30 的节目表,共 117 条节目
2025-01-02 18:02:38,451 - INFO - 完成抓取频道 1 2024-12-31 的节目表,共 146 条节目
2025-01-02 18:02:38,688 - INFO - 完成抓取频道 1 2025-01-01 的节目表,共 173 条节目
2025-01-02 18:02:38,909 - INFO - 完成抓取频道 1 2025-01-02 的节目表,共 202 条节目
2025-01-02 18:02:39,124 - INFO - 完成抓取频道 1 2025-01-03 的节目表,共 230 条节目
2025-01-02 18:02:39,383 - INFO - 完成抓取频道 1 2025-01-04 的节目表,共 261 条节目
2025-01-02 18:02:39,387 - INFO - 开始抓取频道 2 的节目表...
2025-01-02 18:02:39,559 - INFO - 完成抓取频道 2 2024-12-27 的节目表,共 14 条节目
2025-01-02 18:02:39,701 - INFO - 完成抓取频道 2 2024-12-28 的节目表,共 24 条节目
2025-01-02 18:02:39,856 - INFO - 完成抓取频道 2 2024-12-29 的节目表,共 35 条节目
2025-01-02 18:02:40,033 - INFO - 完成抓取频道 2 2024-12-30 的节目表,共 50 条节目
2025-01-02 18:02:40,201 - INFO - 完成抓取频道 2 2024-12-31 的节目表,共 63 条节目
2025-01-02 18:02:40,358 - INFO - 完成抓取频道 2 2025-01-01 的节目表,共 74 条节目
2025-01-02 18:02:40,538 - INFO - 完成抓取频道 2 2025-01-02 的节目表,共 88 条节目
2025-01-02 18:02:40,716 - INFO - 完成抓取频道 2 2025-01-03 的节目表,共 102 条节目
2025-01-02 18:02:40,902 - INFO - 完成抓取频道 2 2025-01-04 的节目表,共 113 条节目
2025-01-02 18:02:40,905 - INFO - 开始抓取频道 6 的节目表...
2025-01-02 18:02:41,234 - INFO - 完成抓取频道 6 2024-12-27 的节目表,共 44 条节目
2025-01-02 18:02:41,558 - INFO - 完成抓取频道 6 2024-12-28 的节目表,共 88 条节目
2025-01-02 18:02:41,888 - INFO - 完成抓取频道 6 2024-12-29 的节目表,共 133 条节目
2025-01-02 18:02:42,221 - INFO - 完成抓取频道 6 2024-12-30 的节目表,共 177 条节目
2025-01-02 18:02:42,532 - INFO - 完成抓取频道 6 2024-12-31 的节目表,共 221 条节目
2025-01-02 18:02:42,873 - INFO - 完成抓取频道 6 2025-01-01 的节目表,共 266 条节目
2025-01-02 18:02:43,201 - INFO - 完成抓取频道 6 2025-01-02 的节目表,共 310 条节目
2025-01-02 18:02:43,537 - INFO - 完成抓取频道 6 2025-01-03 的节目表,共 355 条节目
2025-01-02 18:02:44,060 - INFO - 完成抓取频道 6 2025-01-04 的节目表,共 399 条节目
2025-01-02 18:02:44,064 - INFO - 开始抓取频道 4 的节目表...
2025-01-02 18:02:44,279 - INFO - 完成抓取频道 4 2024-12-27 的节目表,共 20 条节目
2025-01-02 18:02:44,487 - INFO - 完成抓取频道 4 2024-12-28 的节目表,共 40 条节目
2025-01-02 18:02:44,694 - INFO - 完成抓取频道 4 2024-12-29 的节目表,共 62 条节目
2025-01-02 18:02:44,915 - INFO - 完成抓取频道 4 2024-12-30 的节目表,共 84 条节目
2025-01-02 18:02:45,122 - INFO - 完成抓取频道 4 2024-12-31 的节目表,共 104 条节目
2025-01-02 18:02:45,580 - INFO - 完成抓取频道 4 2025-01-01 的节目表,共 122 条节目
2025-01-02 18:02:45,796 - INFO - 完成抓取频道 4 2025-01-02 的节目表,共 137 条节目
2025-01-02 18:02:45,983 - INFO - 完成抓取频道 4 2025-01-03 的节目表,共 151 条节目
2025-01-02 18:02:46,180 - INFO - 完成抓取频道 4 2025-01-04 的节目表,共 166 条节目
2025-01-02 18:02:46,183 - INFO - 开始抓取频道 3 的节目表...
2025-01-02 18:02:46,442 - INFO - 完成抓取频道 3 2024-12-27 的节目表,共 24 条节目
2025-01-02 18:02:46,742 - INFO - 完成抓取频道 3 2024-12-28 的节目表,共 56 条节目
2025-01-02 18:02:47,028 - INFO - 完成抓取频道 3 2024-12-29 的节目表,共 86 条节目
2025-01-02 18:02:47,346 - INFO - 完成抓取频道 3 2024-12-30 的节目表,共 118 条节目
2025-01-02 18:02:47,665 - INFO - 完成抓取频道 3 2024-12-31 的节目表,共 152 条节目
2025-01-02 18:02:47,990 - INFO - 完成抓取频道 3 2025-01-01 的节目表,共 181 条节目
2025-01-02 18:02:48,302 - INFO - 完成抓取频道 3 2025-01-02 的节目表,共 212 条节目
2025-01-02 18:02:48,540 - INFO - 完成抓取频道 3 2025-01-03 的节目表,共 236 条节目
2025-01-02 18:02:48,781 - INFO - 完成抓取频道 3 2025-01-04 的节目表,共 269 条节目
2025-01-02 18:02:48,785 - INFO - 开始抓取频道 14 的节目表...
2025-01-02 18:02:48,940 - INFO - 完成抓取频道 14 2024-12-27 的节目表,共 18 条节目
2025-01-02 18:02:49,153 - INFO - 完成抓取频道 14 2024-12-28 的节目表,共 41 条节目
2025-01-02 18:02:49,379 - INFO - 完成抓取频道 14 2024-12-29 的节目表,共 66 条节目
2025-01-02 18:02:49,566 - INFO - 完成抓取频道 14 2024-12-30 的节目表,共 84 条节目
2025-01-02 18:02:49,744 - INFO - 完成抓取频道 14 2024-12-31 的节目表,共 101 条节目
2025-01-02 18:02:49,931 - INFO - 完成抓取频道 14 2025-01-01 的节目表,共 119 条节目
2025-01-02 18:02:50,117 - INFO - 完成抓取频道 14 2025-01-02 的节目表,共 136 条节目
2025-01-02 18:02:50,326 - INFO - 完成抓取频道 14 2025-01-03 的节目表,共 154 条节目
2025-01-02 18:02:50,546 - INFO - 完成抓取频道 14 2025-01-04 的节目表,共 177 条节目
2025-01-02 18:02:50,550 - INFO - 开始抓取频道 8 的节目表...
2025-01-02 18:02:50,736 - INFO - 完成抓取频道 8 2024-12-27 的节目表,共 18 条节目
2025-01-02 18:02:50,936 - INFO - 完成抓取频道 8 2024-12-28 的节目表,共 38 条节目
2025-01-02 18:02:51,162 - INFO - 完成抓取频道 8 2024-12-29 的节目表,共 60 条节目
2025-01-02 18:02:51,470 - INFO - 完成抓取频道 8 2024-12-30 的节目表,共 79 条节目
2025-01-02 18:02:51,697 - INFO - 完成抓取频道 8 2024-12-31 的节目表,共 98 条节目
2025-01-02 18:02:51,900 - INFO - 完成抓取频道 8 2025-01-01 的节目表,共 117 条节目
2025-01-02 18:02:52,087 - INFO - 完成抓取频道 8 2025-01-02 的节目表,共 136 条节目
2025-01-02 18:02:52,293 - INFO - 完成抓取频道 8 2025-01-03 的节目表,共 156 条节目
2025-01-02 18:02:52,397 - INFO - 完成抓取频道 8 2025-01-04 的节目表,共 156 条节目
2025-01-02 18:02:52,401 - INFO - 开始抓取频道 13 的节目表...
2025-01-02 18:02:52,679 - INFO - 完成抓取频道 13 2024-12-27 的节目表,共 34 条节目
2025-01-02 18:02:52,966 - INFO - 完成抓取频道 13 2024-12-28 的节目表,共 70 条节目
2025-01-02 18:02:53,260 - INFO - 完成抓取频道 13 2024-12-29 的节目表,共 105 条节目
2025-01-02 18:02:53,368 - INFO - 完成抓取频道 13 2024-12-30 的节目表,共 105 条节目
2025-01-02 18:02:53,482 - INFO - 完成抓取频道 13 2024-12-31 的节目表,共 105 条节目
2025-01-02 18:02:53,592 - INFO - 完成抓取频道 13 2025-01-01 的节目表,共 105 条节目
2025-01-02 18:02:53,707 - INFO - 完成抓取频道 13 2025-01-02 的节目表,共 105 条节目
2025-01-02 18:02:53,821 - INFO - 完成抓取频道 13 2025-01-03 的节目表,共 105 条节目
2025-01-02 18:02:53,923 - INFO - 完成抓取频道 13 2025-01-04 的节目表,共 105 条节目
2025-01-02 18:02:53,927 - INFO - 开始抓取频道 17 的节目表...
2025-01-02 18:02:54,080 - INFO - 完成抓取频道 17 2024-12-27 的节目表,共 10 条节目
2025-01-02 18:02:54,230 - INFO - 完成抓取频道 17 2024-12-28 的节目表,共 19 条节目
2025-01-02 18:02:54,385 - INFO - 完成抓取频道 17 2024-12-29 的节目表,共 28 条节目
2025-01-02 18:02:54,549 - INFO - 完成抓取频道 17 2024-12-30 的节目表,共 39 条节目
2025-01-02 18:02:54,712 - INFO - 完成抓取频道 17 2024-12-31 的节目表,共 50 条节目
2025-01-02 18:02:54,881 - INFO - 完成抓取频道 17 2025-01-01 的节目表,共 61 条节目
2025-01-02 18:02:55,054 - INFO - 完成抓取频道 17 2025-01-02 的节目表,共 72 条节目
2025-01-02 18:02:55,216 - INFO - 完成抓取频道 17 2025-01-03 的节目表,共 82 条节目
2025-01-02 18:02:55,653 - INFO - 完成抓取频道 17 2025-01-04 的节目表,共 90 条节目
2025-01-02 18:02:55,657 - INFO - 开始抓取频道 16 的节目表...
2025-01-02 18:02:55,832 - INFO - 完成抓取频道 16 2024-12-27 的节目表,共 19 条节目
2025-01-02 18:02:56,003 - INFO - 完成抓取频道 16 2024-12-28 的节目表,共 39 条节目
2025-01-02 18:02:56,222 - INFO - 完成抓取频道 16 2024-12-29 的节目表,共 60 条节目
2025-01-02 18:02:56,411 - INFO - 完成抓取频道 16 2024-12-30 的节目表,共 79 条节目
2025-01-02 18:02:56,721 - INFO - 完成抓取频道 16 2024-12-31 的节目表,共 97 条节目
2025-01-02 18:02:56,931 - INFO - 完成抓取频道 16 2025-01-01 的节目表,共 113 条节目
2025-01-02 18:02:57,164 - INFO - 完成抓取频道 16 2025-01-02 的节目表,共 129 条节目
2025-01-02 18:02:57,337 - INFO - 完成抓取频道 16 2025-01-03 的节目表,共 144 条节目
2025-01-02 18:02:57,503 - INFO - 完成抓取频道 16 2025-01-04 的节目表,共 157 条节目
2025-01-02 18:02:57,506 - INFO - 开始抓取频道 18 的节目表...
2025-01-02 18:02:57,657 - INFO - 完成抓取频道 18 2024-12-27 的节目表,共 9 条节目
2025-01-02 18:02:57,809 - INFO - 完成抓取频道 18 2024-12-28 的节目表,共 17 条节目
2025-01-02 18:02:57,944 - INFO - 完成抓取频道 18 2024-12-29 的节目表,共 25 条节目
2025-01-02 18:02:58,106 - INFO - 完成抓取频道 18 2024-12-30 的节目表,共 36 条节目
2025-01-02 18:02:58,258 - INFO - 完成抓取频道 18 2024-12-31 的节目表,共 46 条节目
2025-01-02 18:02:58,409 - INFO - 完成抓取频道 18 2025-01-01 的节目表,共 56 条节目
2025-01-02 18:02:58,559 - INFO - 完成抓取频道 18 2025-01-02 的节目表,共 66 条节目
2025-01-02 18:02:58,709 - INFO - 完成抓取频道 18 2025-01-03 的节目表,共 76 条节目
2025-01-02 18:02:58,858 - INFO - 完成抓取频道 18 2025-01-04 的节目表,共 84 条节目
2025-01-02 18:02:58,861 - INFO - 开始抓取频道 7 的节目表...
2025-01-02 18:02:59,074 - INFO - 完成抓取频道 7 2024-12-27 的节目表,共 21 条节目
2025-01-02 18:02:59,295 - INFO - 完成抓取频道 7 2024-12-28 的节目表,共 42 条节目
2025-01-02 18:02:59,487 - INFO - 完成抓取频道 7 2024-12-29 的节目表,共 60 条节目
2025-01-02 18:02:59,711 - INFO - 完成抓取频道 7 2024-12-30 的节目表,共 82 条节目
2025-01-02 18:02:59,927 - INFO - 完成抓取频道 7 2024-12-31 的节目表,共 105 条节目
2025-01-02 18:03:00,098 - INFO - 完成抓取频道 7 2025-01-01 的节目表,共 125 条节目
2025-01-02 18:03:00,264 - INFO - 完成抓取频道 7 2025-01-02 的节目表,共 143 条节目
2025-01-02 18:03:00,345 - INFO - 完成抓取频道 7 2025-01-03 的节目表,共 143 条节目
2025-01-02 18:03:00,413 - INFO - 完成抓取频道 7 2025-01-04 的节目表,共 143 条节目
2025-01-02 18:03:00,417 - INFO - 开始抓取频道 33 的节目表...
2025-01-02 18:03:00,659 - INFO - 完成抓取频道 33 2024-12-27 的节目表,共 32 条节目
2025-01-02 18:03:00,901 - INFO - 完成抓取频道 33 2024-12-28 的节目表,共 61 条节目
2025-01-02 18:03:01,111 - INFO - 完成抓取频道 33 2024-12-29 的节目表,共 88 条节目
2025-01-02 18:03:01,359 - INFO - 完成抓取频道 33 2024-12-30 的节目表,共 122 条节目
2025-01-02 18:03:01,599 - INFO - 完成抓取频道 33 2024-12-31 的节目表,共 155 条节目
2025-01-02 18:03:01,883 - INFO - 完成抓取频道 33 2025-01-01 的节目表,共 187 条节目
2025-01-02 18:03:02,150 - INFO - 完成抓取频道 33 2025-01-02 的节目表,共 224 条节目
2025-01-02 18:03:02,384 - INFO - 完成抓取频道 33 2025-01-03 的节目表,共 256 条节目
2025-01-02 18:03:02,461 - INFO - 完成抓取频道 33 2025-01-04 的节目表,共 256 条节目
2025-01-02 18:03:02,465 - INFO - 开始抓取频道 31 的节目表...
2025-01-02 18:03:02,541 - INFO - 完成抓取频道 31 2024-12-27 的节目表,共 3 条节目
2025-01-02 18:03:02,657 - INFO - 完成抓取频道 31 2024-12-28 的节目表,共 12 条节目
2025-01-02 18:03:02,746 - INFO - 完成抓取频道 31 2024-12-29 的节目表,共 15 条节目
2025-01-02 18:03:02,833 - INFO - 完成抓取频道 31 2024-12-30 的节目表,共 18 条节目
2025-01-02 18:03:02,923 - INFO - 完成抓取频道 31 2024-12-31 的节目表,共 21 条节目
2025-01-02 18:03:03,015 - INFO - 完成抓取频道 31 2025-01-01 的节目表,共 24 条节目
2025-01-02 18:03:03,098 - INFO - 完成抓取频道 31 2025-01-02 的节目表,共 27 条节目
2025-01-02 18:03:03,195 - INFO - 完成抓取频道 31 2025-01-03 的节目表,共 30 条节目
2025-01-02 18:03:03,280 - INFO - 完成抓取频道 31 2025-01-04 的节目表,共 33 条节目
2025-01-02 18:03:03,284 - INFO - 开始抓取频道 32 的节目表...
2025-01-02 18:03:03,697 - INFO - 完成抓取频道 32 2024-12-27 的节目表,共 66 条节目
2025-01-02 18:03:04,106 - INFO - 完成抓取频道 32 2024-12-28 的节目表,共 127 条节目
2025-01-02 18:03:04,523 - INFO - 完成抓取频道 32 2024-12-29 的节目表,共 193 条节目
2025-01-02 18:03:04,884 - INFO - 完成抓取频道 32 2024-12-30 的节目表,共 248 条节目
2025-01-02 18:03:05,241 - INFO - 完成抓取频道 32 2024-12-31 的节目表,共 303 条节目
2025-01-02 18:03:05,587 - INFO - 完成抓取频道 32 2025-01-01 的节目表,共 355 条节目
2025-01-02 18:03:05,926 - INFO - 完成抓取频道 32 2025-01-02 的节目表,共 408 条节目
2025-01-02 18:03:06,290 - INFO - 完成抓取频道 32 2025-01-03 的节目表,共 465 条节目
2025-01-02 18:03:06,734 - INFO - 完成抓取频道 32 2025-01-04 的节目表,共 516 条节目
2025-01-02 18:03:06,738 - INFO - 开始生成 XMLTV 文件...
2025-01-02 18:03:09,085 - INFO - XMLTV 文件生成完成: /www/epg.xml
2025-01-02 18:03:09,114 - INFO - 完成!EPG 文件已保存为 /www/epg.xml

终端访问

1
http://192.168.1.1/epg.xml

重启直至日志提交完成,全程约需10分钟。