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 相关文章推荐
jquery 实现表单验证功能代码(简洁)
Jul 03 Javascript
javascript 日期时间 转换的方法
Feb 21 Javascript
浅谈Javascript 执行顺序
Dec 18 Javascript
DIV始终居中的js代码
Feb 17 Javascript
简单分析javascript面向对象与原型
May 21 Javascript
ECMAScript6块级作用域及新变量声明(let)
Jun 12 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
Jul 17 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
Feb 22 Javascript
Django使用多数据库的方法
Sep 06 Javascript
JavaScript 实现自己的安卓手机自动化工具脚本(推荐)
May 13 Javascript
梳理一下vue中的生命周期
Dec 30 Vue.js
vue打包时去掉所有的console.log
Apr 10 Vue.js
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版(3)
2006/10/09 PHP
让PHP支持页面回退的两种方法
2008/01/10 PHP
php递归使用示例(php递归函数)
2014/02/14 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
2017/06/07 PHP
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
js实现拖拽 闭包函数详细介绍
2012/11/25 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
JS实现网站菜单拖拽移位效果的方法
2015/09/24 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
2016/09/05 Javascript
基于javascript实现按圆形排列DIV元素(三)
2016/12/02 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
JavaScript对象引用与赋值实例详解
2017/03/15 Javascript
AngularJS实现表格的增删改查(仅限前端)
2017/07/04 Javascript
利用vue组件自定义v-model实现一个Tab组件方法示例
2017/12/06 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
[02:32]DOTA2英雄基础教程 美杜莎
2014/01/07 DOTA
Python正则表达式非贪婪、多行匹配功能示例
2017/08/08 Python
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
使用Eclipse如何开发python脚本
2018/04/11 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】
2018/12/05 Python
PYTHON绘制雷达图代码实例
2019/10/15 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
CSS3教程(10):CSS3 HSL声明设置颜色
2009/04/02 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
英国第一摩托车和摩托车越野配件商店:GhostBikes
2019/03/10 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
单位委托书格式范本
2014/09/29 职场文书
追悼会答谢词
2015/01/05 职场文书
廉洁自律承诺书范文
2015/04/28 职场文书
运动会主持词大全
2015/07/02 职场文书
CSS 一行代码实现头像与国旗的融合
2021/10/24 HTML / CSS
德劲DE1105机评
2022/04/05 无线电