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 相关文章推荐
人人网javascript面试题 可以提前实现下
Jan 05 Javascript
将json当数据库一样操作的javascript lib
Oct 28 Javascript
jquery判断小数点两位和自动删除小数两位后的数字
Mar 19 Javascript
js点击button按钮跳转到另一个新页面
Oct 10 Javascript
javascript实现dom元素可拖动
Mar 21 Javascript
基于JS模仿windows文件按名称排序效果
Jun 29 Javascript
基于webpack.config.js 参数详解
Mar 20 Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
Dec 14 Javascript
JavaScript学习笔记之数组基本操作示例
Jan 09 Javascript
关于vue里页面的缓存详解
Nov 04 Javascript
vue实现简单加法计算器
Oct 22 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
PHP 开源框架22个简单简介
2009/08/24 PHP
深入php socket的讲解与实例分析
2013/06/13 PHP
关于php程序报date()警告的处理(date_default_timezone_set)
2013/10/22 PHP
php实现模拟登陆方正教务系统抓取课表
2015/05/19 PHP
PHP使用NuSOAP调用Web服务的方法
2015/07/18 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
用javascript获取textarea中的光标位置
2008/05/06 Javascript
在Javascript里访问SharePoint列表数据的实现方法
2011/05/22 Javascript
javascript实现iframe框架延时加载的方法
2014/10/30 Javascript
jquery实现文本框textarea自适应高度
2016/03/09 Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
2016/05/13 Javascript
JavaScript实现鼠标点击导航栏变色特效
2017/02/08 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
基于mpvue的小程序项目搭建的步骤
2018/05/22 Javascript
vue仿element实现分页器效果
2018/09/13 Javascript
vue.js this.$router.push获取不到params参数问题
2020/03/03 Javascript
js实现微信聊天界面
2020/08/09 Javascript
js实现自定义滚动条的示例
2020/10/27 Javascript
Python函数式编程指南(一):函数式编程概述
2015/06/24 Python
pandas将DataFrame的列变成行索引的方法
2018/04/10 Python
浅谈Django中的数据库模型类-models.py(一对一的关系)
2018/05/30 Python
python简单验证码识别的实现方法
2019/05/10 Python
python实现动态数组的示例代码
2019/07/15 Python
PIL对上传到Django的图片进行处理并保存的实例
2019/08/07 Python
详解css3自定义滚动条样式写法
2017/12/25 HTML / CSS
乐高奥地利官方商店:LEGO Shop AT
2019/07/16 全球购物
Stio官网:男女、儿童户外服装
2019/12/13 全球购物
Tuckernuck官网:经典的美国品质服装、鞋子和配饰
2021/01/11 全球购物
linux面试题参考答案(11)
2012/05/01 面试题
酒店销售经理岗位职责
2014/01/31 职场文书
借款协议书
2014/09/16 职场文书
股东大会通知
2015/04/24 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
2015年学校党建工作总结
2015/05/19 职场文书
2015社区健康教育工作总结
2015/05/20 职场文书
2016年习主席讲话学习心得体会
2016/01/20 职场文书