摘要:入門級的爬蟲地址思否社區文章太多哪個是我想要的對比點贊數對比標題不用害怕,自己動手用來實現爬蟲,麻麻再也不用擔心我學習選擇困難癥啦核心代碼寫入成功核心的代碼僅僅只有行哦配置代碼定義爬蟲的頁面定義存放的路徑定義元素范圍定義數據屬性具體元
入門級的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查看更完整的內容
爬的不僅僅是思否,只有你想不到的,沒有我做不到的!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/105933.html
摘要:前言之前斷斷續續學習了,今天就拿拉勾網練練手,順便通過數據了解了解最近的招聘行情哈方面算是萌新一個吧,希望可以和大家共同學習和進步。 前言 之前斷斷續續學習了node.js,今天就拿拉勾網練練手,順便通過數據了解了解最近的招聘行情哈!node方面算是萌新一個吧,希望可以和大家共同學習和進步。 一、概要 我們首先需要明確具體的需求: 可以通過node index 城市 職位來爬取相關信...
摘要:使用中庫進行的生成操作近日,應領導要求,從網上抓了一大批數據存入了數據庫,可是媽媽批,市場妹子要的是表格啊,畢竟妹子的話還是要聽的關鍵人家語氣蠻好的,就從網上查一些資料。 ## 使用nodejs中node-xlsx庫進行excel的生成操作 ## 近日,應領導要求,從網上抓了一大批數據存入了數據庫,可是媽媽批 ,市場妹子要的是excel表格啊,畢竟妹子的話還是要聽的(關鍵人家語氣蠻好的...
摘要:分布式爬蟲框架詳解隨著互聯網技術的發展與應用的普及,網絡作為信息的載體,已經成為社會大眾參與社會生活的一種重要信息渠道。下載器中間件位于引擎和下載器之間的框架,主要是處理引擎與下載器之間的請求及響應。 scrapy-redis分布式爬蟲框架詳解 隨著互聯網技術的發展與應用的普及,網絡作為信息的載體,已經成為社會大眾參與社會生活的一種重要信息渠道。由于互聯網是開放的,每個人都可以在網絡上...
閱讀 2482·2021-11-19 09:59
閱讀 2006·2019-08-30 15:55
閱讀 938·2019-08-29 13:30
閱讀 1343·2019-08-26 10:18
閱讀 3092·2019-08-23 18:36
閱讀 2394·2019-08-23 18:25
閱讀 1168·2019-08-23 18:07
閱讀 441·2019-08-23 17:15
极致性价比!云服务器续费无忧!
Tesla A100/A800、Tesla V100S等多种GPU云主机特惠2折起,不限台数,续费同价。
NVIDIA RTX 40系,高性价比推理显卡,满足AI应用场景需要。
乌兰察布+上海青浦,满足东推西训AI场景需要