如何删除从Twitter Rest Search API获得的重复图像?

时间:2015-07-27 17:10:22

标签: python image twython twitter-rest-api

我正在使用twython来提取在Twitter上为#apple分享的图像。图像具有由twitter分配的唯一图像ID,但图像在图形上相同。如何检测重复图像?

对于本地图像,我得到了解决方案:

为每个图像计算哈希值,然后删除重复项。

import struct
import os
import hashlib

def jpeg(fh):
    hash = hashlib.md5()
    assert fh.read(2) == "\xff\xd8"
    while True:
        marker,length = struct.unpack(">2H", fh.read(4))
        assert marker & 0xff00 == 0xff00
        if marker == 0xFFDA: # Start of stream
            hash.update(fh.read())
            break
        else:
            fh.seek(length-2, os.SEEK_CUR)
    print "Hash: %r" % hash.digest()
jpeg(file("two.jpg")) # Gives the hash of the image

然而,Twitter图像存储在外部服务器上,这种方法不起作用?假设我必须从twitter获得唯一的图像?

例如:twitter数据给出:

http://pbs.twimg.com/media/CKwk2doVEAE-Y9g.jpg http://pbs.twimg.com/media/CKwka9fUwAEmdLr.jpg

并且所有三个都是相同的图像。

0 个答案:

没有答案