node爬取微博的数据的简单封装库nodeweibo使用指南


Posted in Javascript onJanuary 02, 2015

一、前言

就在去年12月份,有个想法是使用node爬取微博的数据,于是简单的封装了一个nodeweibo这个库。时隔一年,没有怎么维护,中途也就将函数形式改成了配置文件。以前做的一些其他的项目也下线了,为了是更加专注前端 & node.js。偶尔看到下载量一天超过60多,持续不断的有人在用这个库,但是看下载量很少也就没有更新。但是昨天,有人pull request这个分支了,提出一些中肯的建议和有用的代码。于是就认真回顾了下nodeweibo,发布了v2.0.3这个版本。

二、什么是nodeweibo

nodeweibo:对weibo的API进行简单封装,你可以在Node里使用函数的形式调用微博API。

github项目地址:https://github.com/vczero/node-weibo

我这里截一张markdown的部分截图,具体的大家可以到https://github.com/vczero/node-weibo去看。

node爬取微博的数据的简单封装库nodeweibo使用指南

安装:npm install nodeweibo

三、支持的API

支持的API:https://github.com/vczero/node-weibo/blob/master/doc/api.md

目前基本支持所有的weiboAPI,以下是部分截图;感谢George Mason University的xizhonghua添加这份md。

node爬取微博的数据的简单封装库nodeweibo使用指南

四、demo

var Weibo = require('../../nodeweibo');    // require('nodeweibo') also works if you have installed nodeweibo via npm

var setting = require('./setting.json');   // get setting (appKey, appSecret, etc.)

/*

+-------------------------------------------------

(1)注册账号:http://open.weibo.com/

(2)在./setting.json中配置您的开发账号。

(3)搞清楚微博的认证机制即oauth2.0认证原理。

(4)第3点很重要,确保你理解这种开放方式。

+-------------------------------------------------

*/

/*

    initialize weibo before using it

 */

Weibo.init(setting);
/*

+-------------------------------------------------

例1:开启微博认证

启动认证后,将在浏览器器打开一个窗口,url中含有code参数

注意:运行其中一个例子时,须注释掉另一个例子。

+-------------------------------------------------

*/

Weibo.authorize();
/*

+--------------------------------------------------

例2:需要获取access_token

(1)阅读微博开放平台API

   如:http://open.weibo.com/wiki/OAuth2/access_token,

   将必要的参数写进jsonParas对象。

(2)在回调中打印出获取的数据

(3)code是您浏览器窗口获得的code。

(4)注意:如运行本例子,请注释掉第1个例子,且code职能调用一次,

        会随着认证不断更新。一个用户一个access_token。

+---------------------------------------------------

*/

// var jsonParas = {

//     code:"the value of your browser's parameter code",

//     grant_type:"authorization_code"

// };

// Weibo.OAuth2.access_token(jsonParas,function(data){

//     console.log(data);

// });
/*

    example 3, get public timeline

 */

// // set parameters

// var para = {

//     "source": Weibo.appKey.appKey,

//     "access_token": 'your access_token here'

// };

// // get public timeline

// Weibo.Statuses.public_timeline(para, function(data){

//     console.log(data);

// });

五:总结

(1)当年发布一个package时,尽量将文档写全点,这样使用者就会更加方便;这是一种态度。

(2)既然有人使用这个package,就尽量花些时间维护这个package,今年年初,就有人问我如何使用的问题。

 (3)学习他人的代码是一种乐趣;体会别人工作的方法是对工作效率的提升。

Javascript 相关文章推荐
fromCharCode和charCodeAt 方法
Dec 27 Javascript
jQuery 各种浏览器下获得日期区别
Dec 22 Javascript
google地图的路线实现代码
Aug 20 Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
Jan 26 Javascript
在React框架中实现一些AngularJS中ng指令的例子
Mar 06 Javascript
深入理解jQuery之事件移除
Jun 02 Javascript
Bootstrapvalidator校验、校验清除重置的实现代码(推荐)
Sep 28 Javascript
jQuery实现别踩白块儿网页版小游戏
Jan 18 Javascript
Angular4学习教程之HTML属性绑定的方法
Jan 04 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
Feb 28 Javascript
vue插槽slot的理解和使用方法
Apr 03 Javascript
angular inputNumber指令输入框只能输入数字的实现
Dec 03 Javascript
AngularJS + Node.js + MongoDB开发的基于高德地图位置的通讯录
Jan 02 #Javascript
javascript制作的cookie封装及使用指南
Jan 02 #Javascript
分享一则javascript 调试技巧
Jan 02 #Javascript
javascript实现无限级select联动菜单
Jan 02 #Javascript
javascript实现表格排序 编辑 拖拽 缩放
Jan 02 #Javascript
原生javascript实现DIV拖拽并计算重复面积
Jan 02 #Javascript
javascript使用smipleChart实现简单图表
Jan 02 #Javascript
You might like
《Re:从零开始的异世界生活》剧情体验,手游新作定名
2020/04/09 日漫
使用PHP提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
destoon公司主页模板风格的添加方法
2014/06/20 PHP
3种php生成唯一id的方法
2015/11/23 PHP
thinkPHP5.0框架API优化后的友好性分析
2017/03/17 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
总结AJAX相关JS代码片段和浏览器模型
2007/08/15 Javascript
Extjs入门之动态加载树代码
2010/04/09 Javascript
基于jquery的给文章加入关键字链接
2010/10/26 Javascript
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
JS判断对象是否存在的10种方法总结
2013/12/23 Javascript
完美实现js选项卡切换效果(二)
2017/03/08 Javascript
详解nodejs微信公众号开发——5.素材管理接口
2017/04/11 NodeJs
原生js jquery ajax请求以及jsonp的调用方法
2017/08/04 jQuery
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
微信小程序授权登录及解密unionId出错的方法
2018/09/26 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
2018/09/29 Javascript
jQuery是用来干什么的 jquery其实就是一个js框架
2021/02/04 jQuery
[01:45]2014DOTA2 TI预选赛预选赛 战前探营!
2014/05/21 DOTA
python 七种邮件内容发送方法实例
2014/04/22 Python
python使用post提交数据到远程url的方法
2015/04/29 Python
为什么入门大数据选择Python而不是Java?
2018/03/07 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
2019/04/16 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
html5 canvas绘制矩形和圆形的实例代码
2016/06/16 HTML / CSS
html5跳转小程序wx-open-launch-weapp踩坑
2020/12/02 HTML / CSS
购买美国制造的相框和画框架:Picture Frames
2018/08/14 全球购物
家得宝墨西哥官网:The Home Depot墨西哥
2019/11/18 全球购物
墨西哥购物网站:Elektra
2020/01/21 全球购物
外国语学院毕业生自荐信
2013/10/28 职场文书
班级年度安全计划书
2014/05/01 职场文书
python操作xlsx格式文件并读取
2021/06/02 Python
苹果电脑mac os中货币符号快捷输入
2022/02/17 杂记