发现m3u8中不同的位置有相同的key密钥,如何去掉一个,只取其中的一个密钥,密钥前后都一样,只是位置不同,到底该怎么做。
求解!!!!!11
根据您的描述,您似乎想要从一个m3u8文件中删除重复的加密密钥。您可以使用Python中的字典来实现这一点。字典是一种无序的键值对数据结构,可以用于存储唯一的密钥。您可以遍历m3u8文件中的每个密钥,并将其添加到字典中。如果密钥已经存在于字典中,则不需要添加它。最后,您可以将字典中的所有密钥合并为一个字符串,并将其用于解密m3u8文件。
以下是一个示例代码,可以实现这个功能:
# 读取m3u8文件
with open("path/to/file.m3u8", "r") as f:
content = f.read()
# 从m3u8文件中提取所有的加密密钥
keys = re.findall(r'#EXT-X-KEY:METHOD=AES-128,URI="(.+?)"', content)
# 创建一个字典来存储唯一的密钥
unique_keys = {}
# 遍历所有的密钥,并将其添加到字典中
for key in keys:
if key not in unique_keys:
unique_keys[key] = True
# 将字典中的所有密钥合并为一个字符串
merged_keys = "\n".join(unique_keys.keys())
# 将合并后的密钥用于解密m3u8文件
# ...
# 将结果写入新的m3u8文件
with open("path/to/new_file.m3u8", "w") as f:
f.write(merged_keys)
这段代码做了以下几件事情:
希望这可以帮助您解决问题!