node.js实现简单爬虫(一)

node.js实现简单爬虫(一),第1张

写在前面

最近项目上不是很忙,在摸鱼群里看到水友分享爬虫方面的知识,就查些资料,自己摸索着也做了一个简单的爬虫,但其实在node和爬虫方面我还是一个小白,这篇文章主要是想和大家分享一下node和爬虫方面的基本知识,希望对大家有帮助,也想和大家一起交流,一起学习

一个简单的百度新闻爬虫
  • 爬取对象

百度新闻 (http://news.baidu.com)

一. 初始化项目
  1. 新建项目目录
mkdir baiduNews
  1. 初始化package.json
cd baiduNews
npm init
  1. 安装依赖

express (使用express来搭建一个简单的Http服务器。当然,也可以使用node中自带的http模块)
superagent(superagent是node里一个非常方便的、轻量的、渐进式的第三方客户端请求代理模块,用它来请求目标页面)
cheerio (cheerio相当于node版的jQuery,用过jQuery的同学会非常容易上手。它主要是用来获取爬取到的页面元素和其中的数据信息)

yarn add express
yarn add superagent
yarn add cheerio
二. 使用express启动一个简单的本地Http服务器
  • 在项目根目录下创建index.js文件,创建好index.js后,我们首先实例化一个express对象,用它来启动一个本地监听3000端口的Http服务。
const express = require('express')
const app = express()

let server = app.listen(3000, function () {
    let host = server.address().address
    let port = server.address().port
    console.log("服务器启动成功了端口是", port)
})
  • 我们希望在访问本机地址http://localhost:3000的时候,这个服务能给我们返回一个Hello World!在index.js中加入如下代码:
app.get('/', function (req, res) {
  res.send('Hello World!');
});

此时,在项目根目录baiduNews下执行node index.js,让项目跑起来之后,打开浏览器,访问http://localhost:3000,你就会发现页面上显示’Hellow World!'字样。 这样,在后面我们获取到百度新闻首页的信息后,就可以在访问http://localhost:3000时看到这些信息。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/918283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存