Giter Site home page Giter Site logo

mangacrawler's Introduction

MangaCrawler

Author Platform GitHub Node version

GitHub repo size GitHub top language GitHub release (latest by date including pre-releases)

介绍

一个自己写的nodejs爬虫小练习(2),用于下载漫画

本人代码不精,如有更好的实现方法,欢迎交流(PR/Issues/...)

快速开始

安装

使用yarn(推荐)

yarn --prod

使用npm

npm install --production

本项目仅在Linux平台测试并运行,因个人时间和精力有限,未在Windows平台进行测试,无法确定是否会造成问题

如果你在Windows平台运行此项目出现问题,请提交到Issues

运行

目前支持以下网站的漫画

使用下面的命令运行

使用yarn(推荐)

yarn app

使用npm

npm run app

目录结构

存放漫画的文件夹中含有目录和文件各一个

  • 目录:split -- 单张图片的存放位置
  • 文件:manga.html -- 完整漫画文件

bug

  1. 下载请求数提高后,有几率会卡在某一次请求中(若网站支持切换下载节点可通过切换下载节点解决)
  2. 暂未知晓

Todo

  • 辨析漫画类型
  • 漫画类型AB的下载实现
  • 并发请求下载
  • 并发请求下载·优化
  • 连接超时自动退出
  • 对网站 漫画芯 做支持
  • 爬取漫画更多信息
  • 上传未知节点信息至服务器
  • 对网站 漫画堆 做支持
  • 获取漫画更新

更新日志

2021.1.25 21:06 v1.4.0-rc.3

  • 修改:项目使用ESLint + Prettier规范代码,使用dpdm检查模块的循环依赖性
  • 修复:漫画芯的图片链接解析
  • 优化:提升漫画堆获取漫画信息的速度
  • 修改:将puppeteer移入devDependencies

2020.12.19 17:58 v1.4.0-rc.2

  • 优化:代码逻辑

2020.12.5 23:24 v1.4.0-rc.1

  • 修改:项目使用typescript重写(本人仍是typescript小白,请多多指教)
  • 优化:代码模块化xN,优化目录结构
  • 新增:对网站 漫画芯 的支持
  • 修改:原先废弃代码的依赖在项目的devDependencies中,现已移除,改为开发时用到的typescript文件声明依赖

2020.11.29 18:57 v1.4.0-alpha.2

  • 优化:代码模块化
  • 修改:在v1.4.0-alpha.2-1(非release版)对nodejs循环依赖问题的解决方式,现采用回调函数解决
  • 增加:错误代码,方便开发者维护

2020.11.22 22:14 v1.4.0-alpha.1

  • 修改:模块的导出方式
  • 修改:代码进一步模块化
  • 增加:一些测试代码

2020.11.12 22:01 v1.3.0

  • 优化:获取漫画信息的方式
  • 优化:日志输出

2020.11.8 2:08 v1.3.0-rc.1

  • 优化:重构部分代码,解析图片,下载图片速度提升
  • 修改:使用async.queue限制下载请求
  • 修改:选项菜单优化,取消对GUI界面的支持
  • 修改:解析图片,下载图片时一旦发生错误,立即终止进程

2020.11.7 21:23 v1.3.0-alpha.2

  • 增加:判断当前节点是否在节点列表中,选择节点下载功能
  • 修改:取消自动切换节点功能

2020.11.1-19:24 v1.3.0-alpha.1

  • 增加:服务器节点列表
  • 修改:使用async.mapLimit限制下载请求

2020.10.25-15:35 v1.2.0

  • 优化:重写部分代码,优化漫画解析速度
  • 优化:选项菜单逻辑
  • 新增:并发请求下载功能

2020.10.18-17:40 v1.1.0

  • 新增:分辨漫画类型,自动选择合适的方式进行下载

2020.10.17-23:50 v1.0.0

  • 发布初始版本

协议

MIT

mangacrawler's People

Contributors

zolyn avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.