str不支持使用.find的缓冲区接口

时间:2016-03-13 06:42:43

标签: python-3.x

尝试在.thumbdata3文件中搜索thumbnail张图片。这是其他人的示例代码,但我收到了错误

  

" str不支持使用.find"

的缓冲区接口
"""extract files from Android thumbdata3 file"""

f=open('thumbdata3.dat','rb')
tdata = f.read()
f.close()

ss = '\xff\xd8'
se = '\xff\xd9'

count = 0
start = 0
while True:
    x1 = tdata.find(ss,start)
    if x1 < 0:
    break
    x2 = tdata.find(se,x1)
    jpg = tdata[x1:x2+1]
    count += 1
    fname = 'extracted%d03.jpg' % (count)
    fw = open(fname,'wb')
    fw.write(jpg)
    fw.close()
    start = x2+2

1 个答案:

答案 0 :(得分:0)

好的,结果很简单。

只需在我要匹配的数据前添加b

所以

ss = '\xff\xd8'
se = '\xff\xd9'

成为

ss = b'\xff\xd8'
se = b'\xff\xd9'