如何转换此数据以保存字幕?
data={"tt0064621":
{"title": "Name of movie - 1971",
"subtitle": "b'1\\n00:00:40,916 --> 00:00:46,346\\n\\xe2\\x99\\xaa A"
"\\B \\xe2\\x99\\xaa\\n\\n2\\n00:00:47,381 --> 00:00:50,174"
"\\n\\xe2\\x99\\xaa It\\'s C \\xe2\\x99\\xaa\\n\\n3\\n00:00:50,175 -->'"}}
sub_create= data["tt0064621"]['subtitle']
saved_file_name = "subtitle.srt"
with open(saved_file_name, 'wb') as f:
f.write(sub_create) #sub_create.encode() Doesn't work
由于
subtitle
字段中的内容是Python代码,因此可以对其调用eval
。以下是为此更新的代码版本:“/tmp/subtitle.srt”的结果内容:
这是一件很奇怪的事情,但是如果你不能改变数据的格式,那么这似乎是解决问题的好方法。如果您可以更改数据,使其不嵌入Python代码(或类似于Python字节数组常量的其他内容),则效果会更好
更新:请注意@kaya3的警告,担心这些数据可能来自何处,因此可能会在其上运行完整的
eval
,我已根据他们的建议更改代码,以使用更安全的替代方案ast.literal_eval
相关问题 更多 >
编程相关推荐