一个偷偷摸摸的 Tumblr API
项目描述
没有 OAuth 的 Tumblr
TL;DR:tumblr_noauth
是一个 Python 包,它提供了一个
TumblrSession(email, password)
扩展
requests.Session
并提供 Tumblr 登录/注销过程的类。
Tumblr 提供了一个OAuth API,您可以将其用于相当简单的任务,主要用于类似仪表板的功能;有很多遗漏,例如
- 检查 URL 是否可用于创建新博客;端点
www.tumblr.com/check_if_tumblelog_name_is_available
需要身份验证 - 可能是我忘记的其他人
由于没有官方访问该数据的方式,tumblr_noauth
提供了一种解决方法:模拟整个 Tumblr “会话”;您向它提供用户名和密码(
即使在TumblrSession
object中也不会存储),它会执行登录请求(以及带有或在
子句__exit__
末尾的注销请求)。with
在底层, aTumblrSession
是具有一些特殊行为的 a,它针对 Python 的statementsrequests.Session
使用进行了优化。with
对象中的以下方法TumblrSession
专门用于使
https://www.tumblr.com/
前缀可选:
delete
get
head
options
patch
post
put
即高级HTTP请求。
示例用法:
import json
import tumblr_noauth
with open('creds.json') as f:
creds = json.load(f)
with TumblrSession(creds['email'], creds['password']) as session:
data = {'name': staff}
resp = session.post('check_if_tumblelog_name_is_available',
data=data)
print(resp, ';', resp.text)
wherewith
子句自动登录和退出 Tumblr。
对于额外的“真实性”,您可能希望将标题设置为...
# this is lying
headers = {
'Host': 'www.tumblr.com',
'Origin': 'https://www.tumblr.com',
'Referer': 'https://www.tumblr.com/dashboard',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest',
}
项目详情
关
tumblr_noauth -0.1.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1339b1d4d49e9de7baa504cc369dfa6741595fd6bfeed975b702819ec3738149 |
|
MD5 | 57ba653efc8eae0ac538bb2f61a3fb77 |
|
布莱克2-256 | d43c50d176bcb7992b448b55926ffa49094a81f752a5ac1cba82eec22e1a19cc |