2017-01-30 96 views
1

我正在尝试编写一个python脚本来根据输入关键字下载flickr图像。通过访问Flickr API我有2种方式来获得图像:使用Flickr API下载图像 - Python

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. 一些(许多)图像采集做不符合“keyward”(例如输入“hand”可能导致山的图像)。搜索结果不“准确”。 (最大值为500)。但我想尽可能多地下载图像。

谁能帮助我如何解决我的问题呢?非常感谢。

回答

1

我加入解决了第一个问题:

sort="relevance" 
在参数

。现在结果图像与关键字相关性更高。