node lesson3
2015-10-07 18:14
549 查看
var express = require('express'); var superagent = require('superagent'); var cheerio = require('cheerio'); var app = express(); app.get('/', function(req, res){ superagent.get('https://cnodejs.org/') .end(function(err, sres){ if(err){ return next(err); } // sres.text 里面存储着网页的 html 内容,将它传给 cheerio.load 之后 // 就可以得到一个实现了 jquery 接口的变量,我们习惯性地将它命名为 `$` // 剩下就都是 jquery 的内容了 var $ = cheerio.load(sres.text); var items = []; $("#topic_list .topic_title").each(function(idx, ele){ var $ele = $(ele); items.push({ title: $ele.attr("title"), href: $ele.attr("href") } ) }) res.send(items); }) }); app.listen(3000, function (req, res) { console.log('app is running at port 3000'); });
https://github.com/alsotang/node-lessons/tree/master/lesson3
相关文章推荐
- nodejs是单线程
- node lesson2
- Windows环境下的NodeJS+NPM+Bower安装配置步骤
- 省时的浏览器同步测试工具 browsersync NodeJS
- VPS 运行 Node.js 的一些经验
- *LeetCode-Populating Next Right Pointers in Each Node II
- Nodejs安装
- node.js处理torrent
- node.js 在 Express4.0 框架使用 Connect-Busboy 实现文件上传
- Node.JS学习笔记: 基础篇
- Hadoop ->> Name node/Data node和Job tracker/Task tracker的区别
- 初识Node.js
- Hadoop动态加入/删除节点(datanode和tacktracker)
- 为什么我要用 Node.js? 案例逐一介绍
- Node v4.1.1
- inode 详 解
- secondarynamenode配置使用总结
- leetcode 237 : Delete Node in a Linked List
- [237]Delete Node in a Linked List
- Node.js Request Module…sending json in body for api request with put