pocket API学习笔记
最近安装了pocket离线阅读软件。
为了收藏需要的URL,每次都要打开浏览器。然后按google工具条上的pocket+。
网页多的时候,这个过程就非常缓慢。
根据pocket网站的API介绍,我可以创建一个新的应用,直接操作我的收藏夹。
我写了一个python的脚本,大家或许可以看一下。https://github.com/febwave/python-script
1. 创建应用
首先你必须要创建一个pocket账号。
然后从http://getpocket.com/developer/apps/创建属于你的一个新的应用。
记录下CONSUMER KEY。
为了后续的说明,我的应用名称:pyBatchUrl。CONSUMER KEY:36822-6df058ece34310d6dceda601
2. 预备工作
阅读API说明
相信大家都能看明白的,我就不翻译了。只是需要记住使用HTTPS和post方法。
测试工具:fiddler2。
3. 获取request token
request-header:
Content-Type: application/json; charset=UTF-8
X-Accept: application/json
Host: getpocket.comrequest-body:
{"consumer_key":"36822-6df058ece34310d6dceda601","redirect_uri":"pyBatchUrl:authorizationFinished"}
注意:pyBatchUrl是我的应用名称。
response:
{"code":"1f183197-a099-1c67-4e59-3345dc","state":null}
code就是request token。
4. 用户授权,人工执行浏览器,应该仅需要一次,成功登陆即可.如果这步不做的话,获取访问令牌将会失败。
5. 访问令牌access token
request-header
Content-Type: application/json; charset=UTF-8
X-Accept: application/json
request-body
{"consumer_key":"36822-6df058ece34310d6dceda601","code":"1f183197-a099-1c67-4e59-3345dc"}
response
{"access_token":"8f608123-0000-0000-0000-26c49e","username":baidu@sina.com}access_token就是访问令牌,后续应用程序就靠它来访问你的收藏夹了。
username 是用户注册的账号。
6. 增加新的页面
request-header
Host: getpocket.com
Content-Type: application/json; charset=UTF-8
X-Accept: application/json
request-body:比如我想把sina加进来。
{"url":"http:\/\/www.sina.com.cn","title":"sina","consumer_key":"36822-6df058ece34310d6dceda601","access_token":"8f608123-0000-0000-0000-26c49e"}
response
{
"item": {
"item_id": "173403",
"normal_url": "http://sina.com.cn",
"resolved_id": "173403",
"extended_item_id": "173403",
"resolved_url": "http://www.sina.com.cn/",
"domain_id": "663938",
"origin_domain_id": "663938",
"response_code": "200",
"mime_type": "",
"content_length": "117286",
"encoding": "gb2312",
"date_resolved": "2014-12-13 02:58:17",
"date_published": "0000-00-00 00:00:00",
"title": "新浪首页",
"excerpt": "新浪新闻"}
"status": 1
}
}
7. 获取清单
request-header
Host: getpocket.com
Content-Type: application/json
request-body 我就仅获取一条,count可选
{"consumer_key":"36822-6df058ece34310d6dceda601","access_token":"8f608123-0000-0000-0000-26c49e","count":"1","detailType":"simple"}
response
{
"status": 1,
"complete": 1,
"list": {
"173403": {
"item_id": "173403",
"resolved_id": "173403",
"given_url": "http://www.sina.com.cn",
"given_title": "sina",
"favorite": "0",
"status": "0",
"time_added": "1421909498",
"time_updated": "1421909498",
"time_read": "0",
"time_favorited": "0",
"sort_id": 0,
"resolved_title": "新浪首页",
"resolved_url": "http://www.sina.com.cn/",
"excerpt": "新浪新闻",
"is_article": "0",
"is_index": "1",
"has_video": "0",
"has_image": "1",
"word_count": "0"
}
},
"error": null,
"search_meta": {
"search_type": "normal"
},
"since": 1421909572
}
pocket API学习笔记的更多相关文章
- ASP.NET MVC Web API 学习笔记---第一个Web API程序
http://www.cnblogs.com/qingyuan/archive/2012/10/12/2720824.html GetListAll /api/Contact GetListBySex ...
- Windows录音API学习笔记(转)
源:Windows录音API学习笔记 Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { W ...
- Node.js API 学习笔记
常用 API 学习笔记 url 函数 url.parse: 解析 url 地址 url.resolve: 向 url 地址添加或替换字段 url.format: 生成 url 地址 querystri ...
- Windows录音API学习笔记
Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { WORD wMid; 用于波形 ...
- 从零开始搭建.NET Core 2.0 API(学习笔记一)
从零开始搭建.NET Core 2.0 API(学习笔记一) 一. VS 2017 新建一个项目 选择ASP.NET Core Web应用程序,再选择Web API,选择ASP.NET Core 2. ...
- Windows录音API学习笔记--转
Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { WORD wMid; 用于波形 ...
- TCP协议和socket API 学习笔记
本文转载至 http://blog.chinaunix.net/uid-16979052-id-3350958.html 分类: 原文地址:TCP协议和socket API 学习笔记 作者:gilb ...
- Jquery API学习笔记
学习网站 JQuery API 中文网: http://www.jquery123.com/ 学习一遍API可以更熟练的运用jquery并且拓展思路. 这里只挑选了一些我认为在开发中会用到的一些API ...
- Self-Host Web API 学习笔记
ASP.NET Web API 不需要 IIS,直接使用控制台程序可以实现. 一.创建一个新的控制台程序,项目名为 HostApi 二.设置目标框架为.NET Framework 4 三.NuGet添 ...
随机推荐
- [原创]java实现word转pdf
最近遇到一个项目需要把word 转成pdf,百度了一下网上的方案有很多,比如虚拟打印.给word 装扩展插件等,这些方案都依赖于ms word 程序,在java代码中也得使用诸如jacob或jcom这 ...
- putty与emacs
win环境下putty登录到linux并使用emacs时,需要折腾好配置才能正常工作.下面是折腾过程中碰到的问题与解决步骤: 1)要在putty控制台中启用鼠标,只需要在.emacs配置文件中启用xt ...
- asp.net core zipkin
微服务监控zipkin+asp.net core 0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 监控目录:微服务监控zipkin.skywalking以及日志ELK监控系列 一 ...
- 003--linux用户权限常用命令
一.useradd命令选项 –u:指定用户的UID useradd –u 1024 mu #指定mu的UID为1024 –g:指定用户所属的群组 useradd –g jac ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 20. Model Binding
模型绑定 这是个最简单的绑定 先从表单找.再从路由的值上找,最后去QueryString上找 通过反射获取这个类型的属性进行填充.反射完有几个属性,就开始去找着几个属性并绑定值 复杂类型 最后又加了一 ...
- 基于ANDROID平台,U3D对蓝牙手柄键值的获取
对于ANDROID平台,物理蓝牙手柄已被封装,上层应用不可见,也就是说对于上层应用,不区分蓝牙手柄还是其它手柄: 完成蓝牙手柄和ANDROID手机的蓝牙连接后,即可以UNITY3D中获取其键值: 在U ...
- 【WIP】iOS Xcode基础
创建: 2018/04/18 Xcode基本操作 创建项目处的填空 Product Name 应用名 英语字母 Organization Name 公司/组织/个人名 英语字母 Organiz ...
- (水题)洛谷 - P2089 - 烤鸡
https://www.luogu.org/problemnew/show/P2089 非常暴力的dfs,不知道不剪枝会怎么样,但是其实最多也就 $3^{10}$ ,大不到哪里去.还有一个细节就是大于 ...
- 664A - Complicated GCD
题意真是七零八落,乱七八糟.盲目瞎写,水过就好? #include <cstdio> #include <cstring> #include <algorithm> ...
- poj 1988 Cube Stacking【带权并查集】
设s[x]为x所在栈里的个数,c[x]表示x下面有几个,合并的时候直接合并s,然后路径压缩的时候更新c即可 #include<iostream> #include<cstdio> ...