从 2011 年开始用新浪微博至今,收藏了不少微博。最近打算把所收藏的微博全部转存到印象笔记中去。

印象笔记提供了一种很便捷的方式,让用户能很方便地保存某条微博。用户将自己的印象笔记账号和新浪微博账号关联起来后,可以通过「@我的印象笔记」的方式很方便地保存自己或别人的微博。具体可以看印象笔记的官方帮助

 

如何把自己收藏的微博全部转存到印象笔记中去呢?我的想法是这样的:对于自己收藏的每条微博,

  1. 评论它,评论内容为「@我的印象笔记」,这样就完成了微博的保存工作。
  2. 删除自己刚才的评论。这是因为「@我的印象笔记」这样的评论内容对于其他人(发微博的人、看这条微博评论的其他人)来说,没有任何意义,属于信息噪音。删除评论,以减少对他人的干扰。
  3. 取消对那条微博的收藏。因为微博已经转存好了,留着收藏没有必要。

代码已经写好,用的是新浪微博提供的 Java SDK,代码依旧放在 GitHub 上面,项目名称是 weibo-yinxiang-java。之所以项目名称后面带了 -java 字样,是因为这个项目易用性很差,它完全不是针对普通用户的,只针对程序员(最好是懂些 Java 的程序员)。因此,我希望自己有空能写一个易用性更好的、网页版的程序,开发可能会用 JavaScript,到时侯项目名称可能是 weibo-yinxiang-js

下面是程序的使用说明。具体也可以看 README.md

 

使用方法:

  1. 下载并配置新浪微博提供的 Java SDK,并获取 access_token。具体过程可以参考我的上一篇博客
  2. 下载 weibo-yinxiang-java 项目代码,并将 .java 文件所在目录重命名为 weibo_yinxiang
  3. weibo_yinxiang 移动至 weibo4j-oauth2/examples 目录下,相当于在 examples 目录下增加了一个新的 package
  4. 运行 weibo_yinxiang 这个 package 下的 WeiboYinxiang.java 文件,运行时需要以 access_token 值作为参数

 

注意事项:

    • 用「@我的印象笔记」的方式、评论后保存微博,可能保存失败

如果保存失败,@我的印象笔记 账户将会给用户发送微博提醒,其中包含了原微博的 URL 或 id。

但是,目前新浪微博 API 禁止了第三方软件的私信访问权限。

如果新浪微博 API 允许第三方软件访问私信,程序可以通过私信,对之前保存失败的微博重新保存。

因此,目前只能手工处理保存失败的微博。具体方法可以参考 weibo_yinxiang.java 源文件中 main() 函数相关部分代码。

    • 新浪微博 API 调用次数限制问题

如果应用程序没有通过新浪微博的审核,则新浪对于接口的调用频次有一定的限制。本应用程序主要使用的的接口是发评论接口,具体限制是:每小时至多 15 次,每天至多 50 次。

参考链接:

Leave a Reply

Your email address will not be published. Required fields are marked *