使用Flickr API下载图像 - Python

时间:2017-01-30 12:24:21

标签: python flickr

我试图编写一个python脚本来根据输入关键字下载flickr图像。通过访问Flickr API我有两种获取图像的方法:

flickr=flickrapi.FlickrAPI(api_key,api_secret,cache=True)

def flickr_walk(keyward):
    photos = flickr.walk(text=keyward,
                         tag_mode='all',
                         tags=keyward,
                         extras='url_c',
                         per_page=100)

    for photo in photos:
        try:
            url=photo.get('url_c')
            print(url)

        except Exception as e:
            print('failed to download image')

可替换地,

def flickr_search(keyward):
    obj = flickr.photos.search(text=keyward,
                               tags=keyward,
                               extras='url_c',
                               per_page=5)

    for photo in obj:
        url=photo.get('url_c')
        photos = ET.dump(obj)
        print (photos)

然而,无论哪种方式都存在一些问题:

  1. 收集的一些(许多)图像与“键控”不匹配(例如,输入“手”可能导致山的图像)。搜索结果并不“准确”。

  2. 图像下载似乎有最大限制(per_page最大值为500)。但我想尽可能多地下载图像。

  3. 有谁可以帮我解决问题?非常感谢。

1 个答案:

答案 0 :(得分:2)

我通过添加:

解决了第一个问题
sort="relevance"

在论点中。现在结果图像与关键字更相关。