代码之家  ›  专栏  ›  技术社区  ›  compie Artelius

正在检索Flickr收藏夹

  •  3
  • compie Artelius  · 技术社区  · 15 年前

    我不能让这个工作…有什么问题?

    import flickrapi
    
    api_key = '1234...'
    
    flickr = flickrapi.FlickrAPI(api_key)
    user = '43699959@N02'
    favs = flickr.favorites_getPublicList(user_id = user)
    
    >>> favs.items()
    [('stat', 'ok')]
    
    >>> favs.text
    '\n'
    

    我最喜欢的照片在哪里?

    注意:它通过此测试页工作: http://www.flickr.com/services/api/explore/?method=flickr.favorites.getPublicList

    1 回复  |  直到 12 年前
        1
  •  4
  •   chryss    15 年前

    结果是正确的——根据您给出的URL,XML节点是空的(显然,加/减换行符和空白字符)。 favs.text 将返回内容,但您要查找的是属性。试试这个:

    for photo in favs.find('photos').findall('photo'):
        print photo.get('id')
    

    结果:

    '445267544'
    '3334987037'
    

    或者对于所有子节点,从根节点开始:

    for elm in favs.getiterator():
        print elm.items()
    

    结果:

    [('stat', 'ok')]
    [('total', '2'), ('perpage', '100'), ('page', '1'), ('pages', '1')]
    [('isfamily', '0'), ('title', 'The Giants of Africa'), ('farm', '1'), ('ispublic', '1'), ('server', '218'), ('isfriend', '0'), ('secret', '992df924aa'), ('owner', '49746597@N00'), ('id', '445267544'), ('date_faved', '1273873654')]
    [('isfamily', '0'), ('title', 'Lava Light - Maui, Hawaii'), ('farm', '4'), ('ispublic', '1'), ('server', '3401'), ('isfriend', '0'), ('secret', '2fa1856916'), ('owner', '7765891@N08'), ('id', '3334987037'), ('date_faved', '1273873515')]
    
    推荐文章