关于“基于node.js制作简单爬虫教程”的完整攻略,我可以提供如下的步骤和示例。
步骤
- 安装Node.js:在官网上下载对应的安装包,安装完成。
- 创建项目:在命令行中使用
mkdir
创建一个项目目录,使用cd
进入该目录,使用npm init
创建package.json
文件。 - 安装依赖:使用
npm install request cheerio
安装request
和cheerio
两个库。其中,request
用于发送http请求获取网页内容,cheerio
是一个类似jQuery的库,用于解析HTML文档。 - 编写脚本:创建一个
app.js
文件,使用require
引入依赖,使用request
发送http请求,获取网页的HTML内容,使用cheerio
解析HTML文档,使用对应的选择器获取所需数据并输出或保存到文件。
示例
示例一:获取热门电影列表
- 创建项目:在命令行中使用
mkdir movies
创建movies
目录,使用cd
进入该目录,使用npm init -y
创建package.json
文件。 - 安装依赖:使用
npm install request cheerio
安装request
和cheerio
两个库。 - 编写脚本:创建一个
app.js
文件,输入以下代码:
const request = require('request')
const cheerio = require('cheerio')
const url = 'https://movie.douban.com/chart'
request(url, (err, res, body) => {
if (err) {
console.error(err)
return
}
const $ = cheerio.load(body)
$('tr.item').each((i, elem) => {
const title = $(elem).find('.title a').text()
const rating = $(elem).find('.rating_num').text()
console.log(`${i+1}. ${title} - ${rating}`)
})
})
- 运行脚本:在命令行中输入
node app.js
,就会输出豆瓣电影Top250的排名、片名、评分等信息。
示例二:获取天气预报信息
- 创建项目:在命令行中使用
mkdir weather
创建weather
目录,使用cd
进入该目录,使用npm init -y
创建package.json
文件。 - 安装依赖:使用
npm install request cheerio
安装request
和cheerio
两个库。 - 编写脚本:创建一个
app.js
文件,输入以下代码:
const request = require('request')
const cheerio = require('cheerio')
const url = 'http://www.weather.com.cn/weather/101280101.shtml'
request(url, (err, res, body) => {
if (err) {
console.error(err)
return
}
const $ = cheerio.load(body)
const city = $('#forecast-header h1').text().trim()
const date = $('#forecast-header h2').text().trim()
const temp = $('.temp-info .temp').text()
console.log(`城市: ${city}\n日期: ${date}\n气温: ${temp}`)
})
- 运行脚本:在命令行中输入
node app.js
,就会输出当天的天气预报信息,包括城市名称、日期和气温。
以上便是“基于node.js制作简单爬虫教程”的完整攻略,希望能对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于node.js制作简单爬虫教程 - Python技术站