node爬虫爬取小说

  • node爬虫爬取小说
    • 直接上代码

node爬虫爬取小说

最近发现自己喜欢的一个小说无法下载,网页版广告太多,操作太难受,只能自己写个爬虫把内容爬下来放在阅读器里面看
项目下载地址:源码下载
本来想上传个免费资源的,结果审核通过后发现需要10积分,没有办法设置成免费的,我抽空把资源上传到百度云再分享出来,有需要的朋友可以留言

直接上代码

const cheerio = require("cheerio");
const puppeteer = require("puppeteer");
const axios = require("axios");
const fs = require("fs");/*** 公共请求链接方法* @param url 请求链接后缀(例:https://www.baidu.com/zhangsan/111 中 /张三/111 是后缀)*/
const getPage = async (url) => {//请求链接const { data } = await axios.get(`https://www.9biquge.com${url}`, {headers: {"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.36",},});//返回请求结果return data;// console.log('抓取网页成功')
};//主方法
const main = async () => {//请求小说章节列表(找那种所有章节都在一个目录下的页面,如果有翻页的话比较麻烦)const pageData = await getPage("/25/25538/");//转换页面数据变为节点const $ = cheerio.load(pageData);//获取到所有章节标题节点(可通过f12查看)const $list = $("#list dd a");//查看有多少章console.log($list.length);//开始循环标题节点for (let i = 0; i < $list.length; i++) {//拿到标题节点中的页面链接并请求数据(这里可以灵活获取,只要能拿到就行,拿到之后看一下数据是什么样的,完整的还是只有后缀,我这里是只有后缀的)const pageItemData = await getPage($list[i].attribs.href);//同样转化为节点const $$ = cheerio.load(pageItemData);//获取所有文本数据,我这里是一行行进行处理,因为前后中间都有空格,所以我处理一下,不然到时候排版我不喜欢let datailText = "";for (let j = 0; j < $$(".content_detail").length; j++) {datailText +=$$(".content_detail")[j].children[0].data.replace(/\s/g, "") + "\n";}//写入文件,文件需要新建好,就在项目根目录下下面新建,这里需要替换文件名fs.appendFileSync("./我一个史莱姆.txt","\n\n" + $$(".bookname h1").text() + "\n\n" + datailText);console.log($$(".bookname h1").text());//睡眠一秒钟,防止请求频繁被封ipawait sleep(1000);}
};/*
休眠函数sleep
调用 await sleep(1500)*/
function sleep(ms) {return new Promise((resolve) => setTimeout(resolve, ms));
}main();

node爬虫爬取小说相关推荐

  1. Python爬虫—爬取小说名著

    周末闲来无事,本来想看一看书的,结果也没看进去(RNG输的我真是糟心...) 于是就用python写了一个爬虫,来爬取小说来看,防止下次还要去网上找书看. 我们先找一个看名著的小说网 我们打开http ...

  2. python爬虫爬取小说网站并转换为语音文件

    前言 作为一个技术宅,本着为眼睛着想的角度考虑,能少看屏幕就尽量少看屏幕,可是又是一个小说迷,那就开动脑筋爬一下小说转换成语音来听书吧 第一章:爬取小说文件 把目标定在小说存储量比较大的网站:起点中文 ...

  3. python爬取晋江小说简介_python爬虫——爬取小说 | 探索白子画和花千骨的爱恨情仇...

    知识就像碎布,记得"缝一缝",你才能华丽丽地亮相. 1.Beautiful Soup 1.Beautifulsoup 简介 此次实战从网上爬取小说,需要使用到Beautiful S ...

  4. python 爬虫爬取小说信息

    1.进入小说主页(以下示例是我在网上随便找的一片小说),获取该小说的名称.作者以及相关描述信息 2.获取该小说的所有章节列表信息(最重要的是每个章节的链接地址href) 3.根据每个章节的地址信息下载 ...

  5. 关于python爬虫爬取小说

    写了一个下载小说的爬虫,具体代码如下: 现在就是有一个问题,如何在不打乱章节顺序的情况下提高爬取的速度呢??? from urllib.parse import quote import reques ...

  6. Python爬虫爬取小说

    近来闲的无聊,天天逛CSDN看到python多火热多火热,就自己根据教程学习爬虫,参考了好几个博文,忘了地址是啥就不贴出来了 开发工具:PcCharm 开发环境:Python3.8 这次爬取的小说网站 ...

  7. pyhon3爬虫爬取小说(仅供学习使用。爬虫项目小实践)

    此代码实现了通过输入作者名查找小说,列出相似作者的小说,通过用户自行选择小说名下载,亦实现了通过输入小说名字查找小说.相关代码已上传至github:https://github.com/qazhw/p ...

  8. python 小说cms系统_「博文小说网」Python爬虫爬取小说网站 - seo实验室

    博文小说网 #!/usr/bin/env Python # -*- coding: utf-8 -*- # @Author : Woolei # @File : book136_singleproce ...

  9. Jsoup爬虫爬取小说

    作为练手的项目,本来打算爬取点别的,最后还是去爬取了小说网站...... Jsoup是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过D ...

最新文章

  1. 在深度神经网络中你有多吸引人?
  2. CF 1475 F . Unusual Matrix 思维
  3. java 开发人员工具_Java开发人员的5种工具
  4. comparator 字符串比较大小_Java中Comparable和Comparator实现对象比较
  5. pandas 索引去重_Pandas 同元素多列去重的实例
  6. kubenetes 1.4 修改kubelet启动参数修改方法
  7. Linux 命令(72)—— ulimit 命令(builtin)
  8. delphi2007 indy发邮件报could not load ssl library问题的解决
  9. 江苏开放计算机应用基础性考,江苏开放大学计算机应用基础形考第二次作业答案...
  10. android刷机工具 原理,Android 设备刷机教程
  11. 初学视觉学习笔记----打开摄像头遇到的问题
  12. 如何计算机内存的品牌,如何检查计算机内存模块的品牌?如何检查计算机的内存...
  13. 白平衡算法---色温曲线
  14. oracle执行cmd的实现方法
  15. html实现凹陷效果,css3怎么实现字体凹陷凸出效果?(附代码)
  16. Nature子刊:灵活的语音皮质编码可增强与任务相关的声学信息的神经处理
  17. 网页服务器修复,网页被劫持,跳转发布网修复方法 看完就明白
  18. Fabric 009 NodeJs Express安装与运行记录
  19. 设计全局ER模型 数据库系统原理(2007版) 课程代码4735 笔记
  20. python学习——tsv文件批量转为csv文件、csv文件列合并

热门文章

  1. snmp自定义oid,获取服务器时间
  2. JavaScript 拖拽功能
  3. 美华国际医疗美股上市:募资3600万美元 中概股再度面临机遇
  4. Lua语言基础入门 (Lua学习一)
  5. VB和C#中循环语句
  6. word序号10以后的字体和序号间有很大的间隙
  7. MobaXterm无法调出图形界面
  8. 在mysql语句中为什么要加反引号
  9. 经常所说的通用计算机内存是指,了解这些知识,自己组装电脑之——认识电脑内存...
  10. 前端框架Layui实现动态表格效果用户管理实例(对表格进行CRUD操作-附源码)