首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问Flickr方法

访问Flickr方法
EN

Stack Overflow用户
提问于 2018-04-14 11:04:11
回答 1查看 271关注 0票数 2

我正在尝试创建一个基于标签下载Flickr图像的脚本。我在网上发现了这样的脚本,但是它们不能工作,因为我的脚本无法访问Flickr函数。

代码语言:javascript
复制
import flickr_api


print(flickr_api.__version__)
api_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
api_secret = 'YYYYYYYYYYYYYYYYYYYYYYY'

flickr = flickr_api.FlickrAPI(api_key, api_secret)
photos = flickr.photos.search(user_id='73509078@N00', per_page='10')

我得到的结果是:

代码语言:javascript
复制
0.6.1
AttributeError: module 'flickr_api' has no attribute 'FlickrAPI'

我很困惑,因为API文档包含了几乎相同的代码(https://stuvel.eu/flickrapi-doc/2-calling.html )

不知何故,我的API安装错了吗?

  • API位于: C:\Users\Myname\Anaconda3\Lib\site-packages\flickr_api中
  • print(flickr_api.version)返回flickr_api的版本,所以我的脚本至少可以找到文件夹吗?

我在Python方面非常精通,这是我第一次使用API,所以为一个基本的问题道歉!

EN

回答 1

Stack Overflow用户

发布于 2020-07-14 02:55:57

您的问题是“如何开始使用用于Python的Flickr?”

我使用的是PyPi中稍新的2.4版本,也是Stuvel的版本。你可以找到它,这里。在这个版本中,flickr和api之间没有下划线。

我帐户里的照片都不使用标签。相反,我将使用文本搜索。您应该看到下面的工作方式,并尝试一个标签搜索。

另外,我将返回解析的json,而不是xml的缺省值。这样做的好处是可以获得嵌套的dicts,这在Python中非常容易解析和循环。

下面是Spyder的作品-- Anaconda中的交互式外壳。这个未签名的电话显示了我的公开照片。你应该得到同样的结果。

代码语言:javascript
复制
import flickrapi

FLICKR_PUBLIC = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'

FLICKR_SECRET = 'XXXXXXXXXXXXXXX'

flickrapi.__version__
Out[4]: '2.4.0'

flickr = flickrapi.FlickrAPI(FLICKR_PUBLIC,FLICKR_SECRET,format='parsed-json')

MYSTUFF = "157919153@N05"

MyAtkinsons = flickr.photos.search(text="Atkinson", 
    user_id = MYSTUFF,
    extras="description")

MyAtkinsons['photos']
Out[8]: 
{'page': 1,
 'pages': 1,
 'perpage': 100,
 'total': '7',
 'photo': [{'id': '50109797342',
   'owner': '157919153@N05',
   'secret': 'a7d95d8c17',
   'server': '65535',
   'farm': 66,
   'title': 'Atkinson, Everett W. and Olive E.',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, Everett W. and Olive E.'}},
  {'id': '50109558361',
   'owner': '157919153@N05',
   'secret': 'bd2eb4e88f',
   'server': '65535',
   'farm': 66,
   'title': 'Atkinson, Jon Wesley',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, Jon Wesley'}},
  {'id': '46978210785',
   'owner': '157919153@N05',
   'secret': '299b85c928',
   'server': '65535',
   'farm': 66,
   'title': '17azg7nf6jtz6',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, Lawrence M.'}},
  {'id': '47105017914',
   'owner': '157919153@N05',
   'secret': 'cfb49d8c5b',
   'server': '65535',
   'farm': 66,
   'title': 'Atkinson, James L. and Florence',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, James L. and Florence'}},
  {'id': '47104538484',
   'owner': '157919153@N05',
   'secret': '7d52705223',
   'server': '65535',
   'farm': 66,
   'title': '17bcqb9d4n66q',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Robbins, Vera M. Atkinson'}},
  {'id': '47893343811',
   'owner': '157919153@N05',
   'secret': 'eed21d5a5c',
   'server': '65535',
   'farm': 66,
   'title': '17be28jy5r95u',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, Catherine M. and Lew H.'}},
  {'id': '47086890614',
   'owner': '157919153@N05',
   'secret': '1e16987f8b',
   'server': '65535',
   'farm': 66,
   'title': '17bds2q7ui24y',
   'ispublic': 1,
   'isfriend': 0,
   'isfamily': 0,
   'description': {'_content': 'Atkinson, James'}}]}

我有七张阿金森斯的照片在我的帐户中,是公开的,从今天起。

如果需要标记,请将其添加到附加参数中。我只使用从“id”解析出来的照片的默认分辨率,所以我不请求附加参数中的URL。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49830718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档