Closed snowie2000 closed 2 months ago
以上数据是我清空了数据库后,只添加了单一epg生成的数据,不存在和其他epg源混合的问题。 附上有问题的epg文件。
嗯嗯,现在的版本没有把时区考虑进去,处理时间的时候直接取,没有换算。 我换算一下吧。
channel="CCTV4-美洲" start="20240906153000 +0000" stop="20240906160000 +0000">
推上去了,有空试试,看还有问题不。
依然是不对的
接口返回:
{
"channel_name": "CCTV4",
"date": "2024-09-06",
"url": "https://github.com/TakcC/PHP-EPG-Docker-Server",
"epg_data": [
.... 省略中间 ...
{
"title": "此心安处是吾乡5/32",
"start": "14:44",
"end": "15:30",
"desc": ""
},
{
"title": "远方的家2024-117",
"start": "15:30",
"end": "16:15",
"desc": ""
},
... 省略
对应到epg xml:
<programme channel="CCTV4-美洲" start="20240906064400 +0000" stop="20240906073000 +0000"><title lang="zh">此心安处是吾乡5/32</title><date>2024-09-06</date></programme><programme channel="CCTV4-美洲" start="20240906073000 +0000" stop="20240906081500 +0000"><title lang="zh">远方的家2024-117</title><date>2024-09-06</date></programme>
可见时区是对了,但频道依然是不对的
你看数据库里面同时有 CCTV4美洲 跟 CCTV4 么?为啥会把 CCTV4美洲 的数据更新到 CCTV4 上面去了😂
会不会是因为你用了之前的频道映射数据?
旧的那个,会把 CCTV4-美洲
映射成 CCTV4
,前几个版本已经改过来了。
或者你试试把所有频道映射规则都删掉,再更新。
确实是旧版本的错误映射导致的,我把文件全删了重新开始就没有这个问题了
嗯嗯,旧版本没考虑全,只忽略 CCTV-4美洲
这种 4美洲
连在一起的。
其实支持双向模糊匹配之后,这条规则大部分情况下也能删除了,除了 DIYP
用 CCTV1-1080P
CCTV1-50FPS
这类型名称会被处理错。
程序在处理非+8时区时存在计算错误。
以https://assets.livednow.com/epg.xml中的CCTV4为例
UTC时间
20240906075600 +0000
应换算为 15:56 +8时间,而实际程序给出的epg数据为:我不是很确定是不是由于时区错误导致的,因为我甚至无法找到这些数据到底是从哪里来的……