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 相关文章推荐
js在指定位置增加节点函数insertBefore()用法实例
Jan 12 Javascript
jquery制作多功能轮播图插件
Apr 02 Javascript
jQuery+PHP+MySQL实现无限级联下拉框效果
Feb 19 Javascript
vue模板语法-插值详解
Mar 06 Javascript
利用jQuery解析获取JSON数据
Apr 08 jQuery
微信小程序实现星级评分和展示
Jul 05 Javascript
深度了解vue.js中hooks的相关知识
Jun 14 Javascript
vue+eslint+vscode配置教程
Aug 09 Javascript
js针对图片加载失败的处理方法分析
Aug 24 Javascript
vue点击标签切换选中及互相排斥操作
Jul 17 Javascript
vue实现在进行增删改操作后刷新页面
Aug 05 Javascript
vue项目查看vue版本及cli版本的实现方式
Oct 24 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模板中出现空行解决方法
2011/03/08 PHP
php查询ip所在地的方法
2014/12/05 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
php快速查找数据库中恶意代码的方法
2015/04/01 PHP
PHP获取访问设备信息的方法示例
2019/02/20 PHP
JS中彻底删除JSON对象组成的数组中的元素
2020/09/22 PHP
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
在表单提交前进行验证的几种方式整理
2013/07/31 Javascript
图片翻转效果具体实现代码
2014/01/09 Javascript
PHP中CURL的几个经典应用实例
2015/01/23 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
JavaScript中的this使用详解
2016/07/27 Javascript
在javascript中使用com组件的简单实现方法
2016/08/17 Javascript
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
vue如何将v-for中的表格导出来
2018/05/07 Javascript
详解KOA2如何手写中间件(装饰器模式)
2018/10/11 Javascript
JavaScript 预解析的4种实现方法解析
2019/09/03 Javascript
[01:29]2017 DOTA2国际邀请赛官方英雄手办展示
2017/03/18 DOTA
[13:16]INFAMOUS vs VGJ T BO3
2018/06/07 DOTA
在Python的Django框架中调用方法和处理无效变量
2015/07/15 Python
使用Python的Twisted框架编写非阻塞程序的代码示例
2016/05/25 Python
Python 实现一个颜色色值转换的小工具
2016/12/06 Python
Python生成密码库功能示例
2017/05/23 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Python模拟伯努利试验和二项分布代码实例
2020/05/27 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
python 密码学示例——凯撒密码的实现
2020/09/21 Python
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
实例讲解使用HTML5 Canvas绘制阴影效果的方法
2016/03/25 HTML / CSS
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
实用求职信范文分享
2013/12/25 职场文书
工作自我推荐信范文
2015/03/25 职场文书
2016年七夕爱情寄语
2015/12/04 职场文书
导游词之沈阳植物园
2019/11/30 职场文书
python基础之函数的定义和调用
2021/10/24 Python