带有django的handle flickr api库。

flickr-pon的Python项目详细描述


https://api.travis-ci.org/ZuluPro/flickr-pony.svghttps://coveralls.io/repos/ZuluPro/flickr-pony/badge.svg?branch=master&service=github

这个库提供一个Django Storage用于读写中的Flickr 操作。

Flickr有1个免费的缩略图系统,是一个很好的商店解决方案 原始格式的宽图片并以较小格式检索它们

由于flickr致力于照片/图像,所以它不是一个传统的 对象存储,我们考虑来自同一bucket中所有用户的所有图片,但是 不同的目录。那么其他存储上的目录路径应该是什么 将是此项中的用户ID。

安装

经典:

pip install flickr-pony

或:

git clone https://github.com/ZuluPro/flickr-pony.git
cd flickr-pony
python setup.py develop

不需要在settings.FLICKR_STORAGE_OPTIONS中包含数据,并且 设置说明如下。

设置

可以在实例化时使用以下参数配置存储,或者 通过在settings.py中设置名为FLICKR_STORAGE_OPTIONS的字典。

api_key:可在 https://www.flickr.com/services/apps/create/apply/,这是唯一一个 读取操作的必需数据。

api_secret:用api密钥给定

oauth_token_secret:oauth访问令牌,而不是请求令牌

oauth_token_secret:oauth访问令牌机密,而不是请求机密

用户id:您的个人用户id,可以在flickr网页上找到。 这是url示例的最后一部分:140893176@N07。这些数据很有用 如果要自动执行与此用户相关的操作。

信息
获取所有身份验证信息可能会很长很无聊,我们建议您 本页http://acme.com/flickr/authmap.html

用法

此存储有一个简单的用法,如django storage api和其他api中所定义的 使用图片更容易播放的方法。您可以使用以下选项列出用户的照片:

>>> from flickr_pony.storage import FlickrStorage
>>> storage = FlickrStorage(api_key="myApiKey")
>>> storage.listdir('140893176@N07')
([], ['https://farm2.staticflickr.com/1586/25309081103_518e989396_o.jpg',
 'https://farm2.staticflickr.com/1623/25911906696_84c8cf31ae_o.jpg',
 'https://farm2.staticflickr.com/1617/25637193860_98a08d224f_o.jpg',
 ...
 'https://farm2.staticflickr.com/1671/25794942526_5b54c8a908_o.jpg',
 'https://farm2.staticflickr.com/1653/25820730145_4040532d03_o.jpg'])

如果你被允许的话,它会返回原始图像,但也可能是 对于某些用途来说很重,因此可以使用decise以“中等”格式获取:

>>> storage.listdir('140893176@N07', original=False)
([], ['https://farm2.staticflickr.com/1586/25309081103_d132f2fa3f.jpg',
 ...
 'https://farm2.staticflickr.com/1623/25911906696_cee21c32be.jpg',
 'https://farm2.staticflickr.com/1653/25820730145_ef8db88e60.jpg'])

或“小”尺寸:

>>> storage.listdir('140893176@N07', original=False, size='s')
([], ['https://farm2.staticflickr.com/1586/25309081103_d132f2fa3f.jpg',
 ...
 'https://farm2.staticflickr.com/1623/25911906696_cee21c32be.jpg',
 'https://farm2.staticflickr.com/1653/25820730145_ef8db88e60.jpg'])

对于图像库,您还可以决定列出原始图像和缩略图:

>>> storage.list_image_and_thumb()
[('https://farm2.staticflickr.com/1586/25309081103_d132f2fa3f.jpg',
  'https://farm2.staticflickr.com/1586/25309081103_518e989396_o.jpg'),
...
 ('https://farm2.staticflickr.com/1623/25911906696_cee21c32be.jpg',
  'https://farm2.staticflickr.com/1623/25911906696_84c8cf31ae_o.jpg')]

可上传和删除:

>>> from django.core.files import File
>>> with open('myPic', 'rb') as img:
...     storage.save('picName', img)
    '25839776716'
>>> storage.delete('25839776716')

演示

演示项目可供测试和尝试使用:

git clone https://github.com/ZuluPro/flickr-pony-demo
cd flickr-pony-demo
pip install requirements.txt
cd demo_project
export FLICKR_API_KEY="YourFlickrApiKey" # Mandatory
# export FLICKR_USER_ID="YourFlickrUserId"
./manage runserver

您也可以在heroku上部署它:

https://www.herokucdn.com/deploy/button.svg

贡献

所有的贡献都是非常受欢迎的,命题,问题,错误和 使用GitHub issues系统跟踪增强并提交修补程序 通过pull requests

我们使用TravisCoveralls作为连续的集成工具。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Google Billing Library:QueryPurchaseAsync:取消购买的订阅资源未返回   java转换列表mapsturct中的单个对象   java简单算法。我做不好   包含集合的@ManyToMany映射的java JPA2持久性   在Java中序列化和反序列化对象时发生BuffereImage错误   java使用ui:param传递值并在backingbean中访问它们   java从应用程序读取配置。yml至POJO列表地图   java中在while循环外部调用文件值   java如何与来自不同类的UI交互   java如何在jTable中显示2D数组?   在Java 8中,类为什么不从接口继承默认方法?   java类。getAnnotation和getAnnotations无法正常工作   java处理pagertabstrip上的触摸事件   java GWT和struts2异常   用Java解析HTTP查询字符串   java这段代码SQL注入安全吗?