2017-07-08 39 views
0

我测试了python的flickrapi,并有一些随机选择中国食物图片的代码。它通过在1页获得1个结果并使用该结果中的总页数在1个随机页上选择1个结果来实现。下面是我使用来获取图像的代码:python flickrapi search.photos在每一页返回相同的图片

flickr = flickrapi.FlickrAPI(api_key='mykey', secret='mysecret', format='parsed-json', cache=False) 
data1 = flickr.photos.search(tags='Chinese Food', 
          page=1, 
          per_page=1, 
          tag_mode='all', 
          media='photos', 
          content_type=1) 

data2 = flickr.photos.search(tags='Chinese Food', 
          page=randint(1, data1['photos']['pages']), 
          per_page=1, 
          tag_mode='all', 
          media='photos', 
          content_type=1, 
          extras='url_l') 

不管我做什么,结果在data2总是data1完全相同的图像回来,我能得到从第1页的第一个结果而第3472页的第一个结果和图像每次完全一样。

下面是数据的样本在这两组数据返回

//From data1 
{'photos': {'page': 1, 'pages': 70007, 'perpage': 1, 'total': '70007', 'photo': [{'id': '35800805325', 'owner': '[email protected]', 'secret': '408928a034', 'server': '4261', 'farm': 5, 'title': 'Personalized Maple Wood Chopsticks', 'ispublic': 1, 'isfriend': 0, 'isfamily': 0}]}, 'stat': 'ok'} 

//From data2 
{'photos': {'page': 41043, 'pages': 70007, 'perpage': 1, 'total': '70007', 'photo': [{'id': '35800805325', 'owner': '[email protected]', 'secret': '408928a034', 'server': '4261', 'farm': 5, 'title': 'Personalized Maple Wood Chopsticks', 'ispublic': 1, 'isfriend': 0, 'isfamily': 0, 'url_l': 'https://farm5.staticflickr.com/4261/35800805325_408928a034_b.jpg', 'height_l': '859', 'width_l': '1024'}]}, 'stat': 'ok'} 

通知的idtitle完全相同和页码是不同的。我已经在Flickr API explorer中使用完全相同的参数对此进行了测试,并且在指定page 1时获得了相同的图像,但如果指定了其他任何页面,我也会得到完全不同的图像,所以这似乎是python flickrapi实现中的问题或者它的一个依赖可能?

我似乎无法找到问题。到底是怎么回事?

回答

0

看起来像其他人一直使用Flickr的API自2011年以来的问题,它仍然没有得到修复。所以,它似乎与Python或Python Flickr模块没有关系。我能够通过增加每页结果的数量来提高“随机性”,这是我不想做的事情,但它是唯一可行的。

相关问题