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