Flickr API返回重复的照片

时间:2017-05-06 08:08:20

标签: python flickr

我试图通过python从Flickr API中提取地理标记的照片。 但是,它会返回重复的照片。 当它提取超过41页时,返回相同的照片URL。 这是我的代码,

# !/usr/bin/python
# coding=utf-8
from flickrapi import FlickrAPI
import json, time, os
import pymongo

client = pymongo.MongoClient("localhost",27017)
db = client.flickr
coll = db.flickr_a

API_KEY = "xxx"
SEACRET_KEY = "xxx" 

flickr = FlickrAPI(API_KEY, SEACRET_KEY, format="parsed-json")
extras="url_c,url_l,url_o,geo,date_taken,owner_name"

for page in xrange(1,550):
    disney = flickr.photos.search(bbox="139.867,35.613,139.914,35.645", 
per_page=100,extras=extras,page=page)
    photos = disney["photos"]
    coll.insert(photos)

请给我建议或示例代码。 感谢。

1 个答案:

答案 0 :(得分:1)

快速解决方法是将照片网址存储在python列表中,并通过将其转换为集合来删除重复项。

开头

coll = []

添加

coll.append(photos)

最后(我在这里猜你的插入命令)

for p in set(coll):
    db.flickr_a.insert(p)