使用imgur的简单方法。
pyimgur的Python项目详细描述
使用imgur的简单方法。
你可以上传图片,下载图片,阅读评论,更新相册, 给人们留言等等。事实上,你几乎可以通过皮格做任何事情 你可以通过网络终端。
开始
在开始使用pyimgur之前,我们需要在 伊姆古尔。这样,imgur就可以看到每个应用程序在其站点上做什么。 转到https://api.imgur.com/oauth2/addclient注册您的客户。注意 不能对imgur的旧v2版本使用应用程序注册 2012年12月折旧的API。
当我们注册我们的应用程序时,我们得到了一个client_id和一个 client_secret。client_secret用于作为用户进行身份验证, 如果我们只需要访问公共或匿名资源,那么我们可以将其保留 出去。在我们的第一个例子中,我们将得到一些关于图像的信息 已上载到图像:
import pyimgur CLIENT_ID = "Your_applications_client_id" im = pyimgur.Imgur(CLIENT_ID) image = im.get_image('S1jmapR') print(image.title) # Cat Ying & Yang print(image.link) # http://imgur.com/S1jmapR.jpg
Imgur对象保存身份验证信息,更改 身份验证是从imgur获取对象的常用方法。
上载图像
让我们使用另一个示例来演示如何上载图像:
import pyimgur CLIENT_ID = "Your_applications_client_id" PATH = "A Filepath to an image on your computer" im = pyimgur.Imgur(CLIENT_ID) uploaded_image = im.upload_image(PATH, title="Uploaded with PyImgur") print(uploaded_image.title) print(uploaded_image.link) print(uploaded_image.size) print(uploaded_image.type)
有些方法在这里使用默认值None的一个或多个参数。为了 方法修改现有对象,这意味着保留已有的对象。 价值。对于不修改现有对象的方法,这意味着使用 违约。
惰性对象
为了减少imgur的负载,pyimgur只请求它需要的数据。这个 意味着每个对象都有属性_has_fetched,如果True`有 如果False可以获取更多信息,则会获取它所能获取的所有数据。
每当我们请求一个尚未加载最新信息的属性时 将从imgur请求并将所有对象属性更新为 最新的价值观。我们还可以使用方法refresh()强制调用 imgur,它将用最新值更新对象:
import pyimgur CLIENT_ID = "Your_applications_client_id" im = pyimgur.Imgur(CLIENT_ID) gallery_image = im.get_gallery_image('JiAaT') author = gallery_image.author print(author._has_fetched) # False ie. it's a lazily loaded object print(author.reputation) print(author._has_fetched) # True ie. all values have now been retrieved.
自省
请记住,像往常一样,您可以使用dir、vars和help内置 函数来内省对象,以了解有关对象及其工作方式的更多信息。
Mashape API
imgur通过使用不同端点和 一些额外的认证。您可以通过提供 初始化imgur对象时的mashape键:
import pyimgur CLIENT_ID = "Your_applications_client_id" MASHAPE_KEY = "Your_mashape_api_key" im = pyimgur.Imgur(CLIENT_ID, mashape_key=MASHAPE_KEY)
有关mashape的api和定价的更多信息可以在Mashape website上找到。
支架
如果您发现一个bug,有任何关于如何使用pyimgur的问题,或者 改进建议然后可以在Github project page上提交问题。
文档
pyimgur的完整文档位于ReadTheDocs。
许可证
这里包含的所有代码都是由 the GNU GPLv3。