Как удалить дубликаты изображений, полученных из Twitter Rest Search API?

Я использую twython для извлечения изображений, которые публикуются в твиттере для #apple. Изображения имеют уникальный идентификатор изображения, назначенный Твиттером, но изображения являются одинаковыми. Как я могу обнаружить дубликаты изображений?

Для локальных изображений я получил решение:

Рассчитайте хэш для каждого изображения, а затем удалите дубликаты.

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 хранятся на внешнем сервере, и этот подход не работает? Допустим, я должен получить только уникальные изображения из твиттера?

например: данные из твиттера дают:

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

и все три одинаковые изображения.

0 ответов

Другие вопросы по тегам