- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
from oauth_hook import OAuthHook
import requests, json
OAuthHook.consumer_key = "KEYHERE"
OAuthHook.consumer_secret = "SECRET HERE"
oauth_hook = OAuthHook("TOKEN_KEY_HERE", "TOKEN_SECRET_HERE", header_auth=True)
headers = {'content-type': 'application/json'}
client = requests.session(hooks={'pre_request': oauth_hook}, headers=headers)
payload = {"title":"album title"}
r = client.post("http://api.imgur.com/2/account/albums.json",payload)
print r.text
这应该创建一个专辑,标题为 album title
而不是返回字符串
{
"albums": {
"id": "IMGURID",
"title": "",
"description": "",
"privacy": "public",
"cover": "",
"order": 0,
"layout": "blog",
"datetime": "2012-12-05 15:48:21",
"link": "IMGUR LINK",
"anonymous_link": "ANONYLINK"
}
}
有没有人有使用请求设置相册标题的解决方案?
这里是 imgur API 文档的链接 http://api.imgur.com/resources_auth
最佳答案
您没有发布 JSON 数据;相反,它将被转换为 URL 编码的数据。 requests
不提供自动 JSON 编码,即使您将内容类型设置为 application/json
。
使用json
模块进行编码:
import json
r = client.post("http://api.imgur.com/2/account/albums.json", json.dumps(payload))
您可以在使用 http://httpbin/post
POST echo service 时看到这一点:
>>> import json, requests, pprint
>>> headers = {'content-type': 'application/json'}
>>> payload = {"title":"album title"}
>>> pprint.pprint(requests.post('http://httpbin.org/post', payload, headers=headers).json)
{u'args': {},
u'data': u'title=album+title',
u'files': {},
u'form': {},
u'headers': {u'Accept': u'*/*',
u'Accept-Encoding': u'gzip, deflate, compress',
u'Connection': u'keep-alive',
u'Content-Length': u'17',
u'Content-Type': u'application/json',
u'Host': u'httpbin.org',
u'User-Agent': u'python-requests/0.14.2 CPython/2.7.3 Darwin/11.4.2'},
u'json': None,
u'origin': u'xx.xx.xx.xx',
u'url': u'http://httpbin.org/post'}
>>> pprint.pprint(requests.post('http://httpbin.org/post', json.dumps(payload), headers=headers).json)
{u'args': {},
u'data': u'{"title": "album title"}',
u'files': {},
u'form': {},
u'headers': {u'Accept': u'*/*',
u'Accept-Encoding': u'gzip, deflate, compress',
u'Connection': u'keep-alive',
u'Content-Length': u'24',
u'Content-Type': u'application/json',
u'Host': u'httpbin.org',
u'User-Agent': u'python-requests/0.14.2 CPython/2.7.3 Darwin/11.4.2'},
u'json': {u'title': u'album title'},
u'origin': u'xx.xx.xx.xx',
u'url': u'http://httpbin.org/post'}
如果您使用的是requests
2.4.2 或更高版本,您可以将编码留给库;只需将有效负载作为 json
关键字参数传递即可;顺便说一下,在这种情况下它还会设置正确的 Content-Type header :
r = client.post("http://api.imgur.com/2/account/albums.json", json=payload)
关于python - 请求发布到 imgur,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13727132/
我正在使用 https://api.imgur.com/3/image无需 从 JavaScript 上传图片oauth . 是否可以使用我的 Client-ID 查看最近上传的图片? 最佳答案 不幸
我正在使用 imgur API,我有几个问题,上传 .gif 的大小限制是多少?我到处都读到图片的大小限制是 10Mb,gif 是 20Mb,但是当我尝试使用 API 上传 11Mb 的 gif 时,
如何在 imgur.com 上将图像设置为具有非随机文件名? 当我上传图像时,会为其分配一个随机字符串。 我如何链接到像 username.imgur.com/meaningful_file_name
如何在不让用户对 imgur 进行身份验证的情况下将用户图像上传到 imgur,即,我想代表应用程序(订阅免费增值计划)而不是用户上传。我遇到了 imgur 的 oauth api,但我想我不想要那个
作为 Reddit 机器人的一部分,我正在使用 Imgur API 将图像上传到相册。但是,当我尝试上传 MP4 文件时出现错误:“文件类型无效 (1)”。使用该网站上传完全相同的 MP4 文件效果很
我在尝试让 Scribe 与 Imgur 交互时遇到了困难。我不断得到 java.security.cert.CertificateException:找不到与 api.imgur.com 匹配的主题
我目前正忙于创建一个可以放置内容等的网站。 当我想添加图像时,我可以从桌面或使用 url 上传它。我知道有一些 api 可以使用,但我已经联系了 IMGUR,但他们仍然没有回复。我想知道;当我通过自己
我目前正忙于创建一个可以放置内容等的网站。 当我想添加图像时,我可以从桌面或使用 url 上传它。我知道有一些 api 可以使用,但我已经联系了 IMGUR,但他们仍然没有回复。我想知道;当我通过自己
我一直在自学如何使用 react 和 meteor ,我正在学习 Udemy 的类(class)。我们要做的第一个项目需要 imgur 画廊端点,即:https://api.imgur.com/3/g
我正在使用 python 尝试从 imgur 下载一些图像。我一直在使用 urrlib 和 urllib.retrieve 但您需要在保存文件时指定扩展名。对于大多数帖子来说这不是问题,因为链接中有例
我已在 HTML 中创建了此代码 Picture Uploading... 这是我的 imguruploads.js /* Imgur Upload Script */ (function (
我有一个 image在图片上。此图像显示在除本地主机之外的任何网站上。 可能是什么问题? Error: GET http://i.imgur.com/CTIZUG1t.jpg 403 (Forbid
from oauth_hook import OAuthHook import requests, json OAuthHook.consumer_key = "KEYHERE" OAuthHook.
我确定这篇文章将被 hive 关闭。如果您知道,请发布答案。 只是想知道 imgur.com 是否使用数据库或文件系统来存储他们所有的图像。 我做了一些研究 http://imgur.com/blog
这就是我现在拥有的,它适用于单个图像。 curl -vH "Authorization: Client-ID 3e7a4deb7ac67da" -F image=@/path/to/image htt
我有一个关于 imgur 的问题api。 我想使用 imgur api 为我的网站创建一个图库,但是如何创建一个上传到 imgur 服务器的文件上传器? 这是我创建的: base64_encode(
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我正在尝试使用 Node.js 和 Express.js 编写一个应用程序(我正在学习免费代码营类(class),如果这是有用的信息),该应用程序接受搜索词并向 Imgur API 发送和查询并报告一
于是就有了这行代码 String data = URLEncoder.encode("image", "UTF-8") + "=" + URLEncoder.encode(Base64.encodeB
我可以像这样使用 api 将匿名图像上传到 imgur: public static void UploadImage() { Image image = GetImage(); st
我是一名优秀的程序员,十分优秀!