摘要:入门级的爬虫地址思否社区文章太多哪个是我想要的对比点赞数对比标题不用害怕,自己动手用来实现爬虫,麻麻再也不用担心我学习选择困难症啦核心代码写入成功核心的代码仅仅只有行哦配置代码定义爬虫的页面定义存放的路径定义元素范围定义数据属性具体元
入门级的node爬虫
github地址:https://github.com/lll618xxx/...
思否社区文章太多?哪个是我想要的?对比点赞数or对比标题
不用害怕,自己动手用node来实现爬虫,麻麻再也不用担心我学习选择困难症啦!
</>复制代码
const superagent = require("superagent")
const cheerio = require("cheerio")
const xlsx = require("node-xlsx")
const fs = require("fs")
const options = require("./options")
superagent.get(options.url)
.then(res => {
const bufferdata = [{
name: "sheet1",
data: [options.attr.map((item, index, arr) => {
return arr[index][2]
})]
}]
const $ = cheerio.load(res.text);
$(options.ele).each((index, item) => {
let arr = []
options.attr.forEach((v, i, a) => {
arr.push(a[i][1] ? $(item).find(a[i][0]).attr(a[i][1]) : $(item).find(a[i][0]).text())
})
bufferdata[0].data.push(arr)
})
fs.writeFile(options.excelPath, xlsx.build(bufferdata), (err) =>{
if (err) throw err;
console.log("写入Excel成功");
})
})
.catch(err => {
console.log(err)
});
核心的代码仅仅只有36行哦!
配置代码</>复制代码
const path = require("path")
// 定义爬虫的页面
const url = "https://segmentfault.com/hottest/monthly"
// 定义excel存放的路径
const excelPath = path.join(__dirname, "result.xlsx")
// 定义元素范围
const ele = "div.wrapper div.news-list div.news__item-info"
// 定义数据属性 ["具体元素", "属性", "别名"]
const attr = [
["a", "href", "链接"],
["span.votes-num", "", "点赞数"],
["h4.news__item-title", "", "标题名字"],
["span.author a", "", "作者名字"],
]
安装依赖
</>复制代码
npm i
运行项目
</>复制代码
cd node-reptile-simple && node index.js
配置项(options.js)
</>复制代码
url 定义爬虫的页面
excelPath 定义excel存放的路径
ele 定义元素范围
attr 定义数据属性 ["具体元素", "属性", "别名"]
截图
可以去github查看更完整的内容
爬的不仅仅是思否,只有你想不到的,没有我做不到的!
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/105933.html
摘要:前言之前断断续续学习了,今天就拿拉勾网练练手,顺便通过数据了解了解最近的招聘行情哈方面算是萌新一个吧,希望可以和大家共同学习和进步。 前言 之前断断续续学习了node.js,今天就拿拉勾网练练手,顺便通过数据了解了解最近的招聘行情哈!node方面算是萌新一个吧,希望可以和大家共同学习和进步。 一、概要 我们首先需要明确具体的需求: 可以通过node index 城市 职位来爬取相关信...
摘要:使用中库进行的生成操作近日,应领导要求,从网上抓了一大批数据存入了数据库,可是妈妈批,市场妹子要的是表格啊,毕竟妹子的话还是要听的关键人家语气蛮好的,就从网上查一些资料。 ## 使用nodejs中node-xlsx库进行excel的生成操作 ## 近日,应领导要求,从网上抓了一大批数据存入了数据库,可是妈妈批 ,市场妹子要的是excel表格啊,毕竟妹子的话还是要听的(关键人家语气蛮好的...
摘要:分布式爬虫框架详解随着互联网技术的发展与应用的普及,网络作为信息的载体,已经成为社会大众参与社会生活的一种重要信息渠道。下载器中间件位于引擎和下载器之间的框架,主要是处理引擎与下载器之间的请求及响应。 scrapy-redis分布式爬虫框架详解 随着互联网技术的发展与应用的普及,网络作为信息的载体,已经成为社会大众参与社会生活的一种重要信息渠道。由于互联网是开放的,每个人都可以在网络上...
阅读 2716·2021-11-19 09:59
阅读 2161·2019-08-30 15:55
阅读 1025·2019-08-29 13:30
阅读 1428·2019-08-26 10:18
阅读 3172·2019-08-23 18:36
阅读 2463·2019-08-23 18:25
阅读 1255·2019-08-23 18:07
阅读 515·2019-08-23 17:15