0
我的问题的背景是我想提取运动照片(由我的三星S7拍摄)的视频数据。手动操作很简单但很耗时。只需在HexEditor中打开.jpg文件并提取“MotionPhoto_Data”行后面的所有数据即可。第一部分是图像,第二部分是视频。切割数据附加到.jpg文件并保存为mpg文件
我当前的代码是
im = 'test.jpg'
with open(im, 'rb') as fin:
data = fin.read()
data_latin = data.decode('latin1')
fin.close()
position = data_latin.find('MotionPhoto_Data')
data_pic = data[:position]
data_mpg = data[position:]
我现在的问题是我不能弄清楚如何将这些字符串保存的方式,data_pic
保存为JPG工作和data_mpg
作为工作的视频。
我试图
with open('test_pic.jpg', 'a') as fin:
fin.write(str(data_pic))
fin.close()
但这didn't工作。我认为在我如何处理/保存数据方面存在一个基本问题,但我无法弄清楚如何解决这个问题。
感谢它解决我的问题:) – Kai
现在,我又看了一遍,你不应该使用“fout.close()”当使用“with”语句时。这是令人困惑的,因为“with”语句正是为了避免使用“close”函数。 – cbodt