本文主要是介绍Node.js爬虫初试———安居客的数据爬取,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
描述:
爬取小试
爬取的数据段
定位的数据段
代码:
const http = require('https')
const fs = require('fs')
//引入node.js内置的文件模块 实现数据爬取后的输出const cheerio = require('cheerio')
//cheerio是nodejs的抓取页面模块,为服务器特别定制的,需要npm
//快速、灵活、实施的jQuery核心实现。适合各种Web爬虫程序。const url = 'https://bj.zu.anjuke.com/'
//输入所要爬取的网站http.get(url, (res) => {res.setEncoding('utf8')let result = ''res.on('data', (chunk) => {result += chunk})res.on('end', (chunk) => {let data = spider(result)// console.log(data)fs.writeFileSync('./data/ajk.json', JSON.stringify(data))})
})//主要 处理所定位爬取的数据
function spider(html){let $ = cheerio.load(html,{decodeEntities:false})//decide 处理字符let dataList = []$('.zu-itemmod').each((i, item) => {let $item = $(item)// 头部数据let title = $item.find('img').attr('alt')// img地址let img = $item.find('img').attr('src')// 描述信息let desc_item = $item.find('.details-item').html()// 价格数据let price = $item.find('.zu-side strong').html()dataList.push({ title, img , desc_item , price })})return dataList
}
爬取结果:
这篇关于Node.js爬虫初试———安居客的数据爬取的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!