我试图通过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)
请给我建议或示例代码。 感谢。
答案 0 :(得分:1)
快速解决方法是将照片网址存储在python列表中,并通过将其转换为集合来删除重复项。
开头
coll = []
添加
coll.append(photos)
最后(我在这里猜你的插入命令)
for p in set(coll):
db.flickr_a.insert(p)