非凡首页|软件资讯|最新更新|下载排行|软件分类|软件专题
您当前位置: 下载首页教育教学电子阅读三木猿阅读(电脑小说漫画阅读器)

三木猿阅读(电脑小说漫画阅读器) v1.12 电子阅读

  • 软件等级:3 stars.
  • 软件大小:51.81MB
  • 支持语言:简体中文
  • 授权方式:免费版
  • 软件分类:教育教学/电子阅读
  • 官网链接:
  • 更新时间:2025-08-21 05:21:10
  • 运行环境:WinXp,Win2003,WinVista,Win 7,Win 8,Win 10,x64
  • 厂商:
关 键 字:
软件介绍 软件截图 软件专题 软件问答 相关文章 相关软件 下载地址

三木猿阅读专为喜欢看小说的电脑端用户制作,提供海量丰富的小说和漫画资源,数据资源来源于网络,用户能够在这里搜索资源并进行在线阅读,还提供离线下载的功能,用户无需注册会员即可免费看到小说的全部章节内容,支持添加书签和自定义设置阅读页面。

软件功能

在线小说资源阅读

离线下载功能

搜索框

多数据源筛选

软件使用

解压后打开exe文件,到浏览器输入http://localhost/,即可开始阅读,数据源有两个biquge和biquge5200,页面借用了起点。

部分代码

package com.aaa.data;

import com.aaa.config.SSLHelper;

import com.aaa.dto.BookCatalogueDto;

import com.aaa.entity.BookCatalogue;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.nodes.Node;

import org.jsoup.select.Elements;

import java.io.IOException;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import java.util.concurrent.*;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

import static com.aaa.util.DataProcessing.splitList;

/**

* [url=home.php?mod=space&uid=686208]@AuThor[/url] 杨森

* [url=home.php?mod=space&uid=1248337]@version[/url] 1.0

* @Title: BookCatalogue

* [url=home.php?mod=space&uid=686237]@date[/url] 2020/8/7 15:39

*/

public class BookCatalogueDB {

private static ExecutorService executorService;

public static ListsetDataSource(String dataSource, String bookCod,ExecutorService executorService) {

BookCatalogueDB.executorService =executorService;

SSLHelper.init();

if ("biquge5200".equals(dataSource)) {

return biquge5200(bookCod);

} else if ("biquge".equals(dataSource)) {

return biquge(bookCod);

}

return null;

}

private static Listbiquge5200(String bookCod) {

try {

Map<Integer,List> bookCatalogueDtoMaps = new HashMap<>(3);

Pattern pattern = Pattern.compile("]>([⁄⁄s⁄⁄S]*?)(?=)");

Document document = Jsoup.connect("https://www.biquge5200.com/" + bookCod + "/").get();

Elements dd = document.getElementsByTag("dd");

Map<Integer, List> integerListMap = splitList(dd, 3);

CountDownLatch latch=new CountDownLatch(3);

for (int i = 0; i < 3; i++) {

final int ins=i;

executorService.execute(() -> {

bookCatalogueDtoMaps.put(ins,get(integerListMap.get(ins), bookCod, document, pattern));

latch.countDown();

});

}

latch.await();

ListbookCatalogueDtos=new ArrayList<>(dd.size());

for (int i = 0; i < 3; i++) {

bookCatalogueDtos.addAll(bookCatalogueDtoMaps.get(i));

}

return bookCatalogueDtos;

} catch (IOException e) {

e.printStackTrace();

} catch (InterruptedException e) {

e.printStackTrace();

}finally {

executorService.shutdown();

}

return null;

}

public static Listget(Listdd, String bookCod, Document document, Pattern pattern) {

ListbookCatalogueDtos = new ArrayList<>(dd.size());

Element imgurl = document.getElementById("fmimg");

Element intro = document.getElementById("intro");

Element info = document.getElementById("info");

Element child = info.child(1);

String h1 = info.select("h1").text();

for (int i = 0; i < dd.size(); i++) {

Element element = dd.get(i);

BookCatalogueDto bookCatalogueDto = new BookCatalogueDto();

BookCatalogue bookCatalogue = new BookCatalogue();

Node node = element.childNode(0);

for (Node e : element.childNodes()) {

if (!"".equals(e.toString())) {

node = e;

}

}

bookCatalogueDto.setCatalogueName(node.childNode(0).toString());

String s1 = node.toString();

Matcher matcher = pattern.matcher(s1);

if (matcher.find()) {

String nameCodeUrl = matcher.group(1);

String insStr = nameCodeUrl.substring(nameCodeUrl.lastIndexOf("/") + 1, nameCodeUrl.lastIndexOf("."));

bookCatalogueDto.setCatalogueCod(Integer.parseInt(insStr));

}

bookCatalogueDto.setBookName(h1);

bookCatalogueDto.setBookIntro(intro.text());

for(Node n :imgurl.childNodes()){

if(n.toString().matches("(.*)img(.*)")){

bookCatalogueDto.setBookImage(imgurl.childNode(0).toString());

}

}

bookCatalogueDto.setBookCod(bookCod);

bookCatalogueDto.setBookAuthor(child.text().replace("作 者:",""));

bookCatalogueDtos.add(bookCatalogueDto);

if (i + 1 < dd.size()) {

Node node1 = dd.get(i + 1).childNode(0);

Matcher matcher1 = pattern.matcher(node1.toString());

if (matcher1.find()) {

String nameCodeUrl = matcher.group(1);

String insStr = nameCodeUrl.substring(nameCodeUrl.lastIndexOf("/") + 1, nameCodeUrl.lastIndexOf("."));

bookCatalogue.setNextCode(Integer.parseInt(insStr));

}

}

}

return bookCatalogueDtos;

}

private static Listbiquge(String bookCod) {

try {

Pattern pattern = Pattern.compile("]>([⁄⁄s⁄⁄S]*?)(?=)");

Document document = Jsoup.connect("https://www.biquge.com/" + bookCod + "/").get();

Map<Integer,List> bookCatalogueDtoMaps = new HashMap<>(3);

Elements dd = document.getElementsByTag("dd");

Map<Integer, List> integerListMap = splitList(dd, 3);

CountDownLatch latch=new CountDownLatch(3);

for (int i = 0; i<3; i++) {

final int ins=i;

executorService.execute(()->{

bookCatalogueDtoMaps.put(ins,get(integerListMap.get(ins), bookCod, document, pattern)) ;

latch.countDown();

});

}

latch.await();

ListbookCatalogueDtos=new ArrayList<>(dd.size());

for (int i = 0; i < 3; i++) {

bookCatalogueDtos.addAll(bookCatalogueDtoMaps.get(i));

}

return bookCatalogueDtos;

} catch (Exception e) {

e.printStackTrace();

}finally {

executorService.shutdown();

}

return null;

}

}

以上就是三木猿阅读(电脑小说漫画阅读器)的全部内容了,快快收藏非凡软件站下载更多软件和游戏吧!

软件截图

查看安装过程

小说阅读器

小说阅读器 看小说不仅可以帮助我们打发无聊的时间,更有用的是可以提高我们的文采及扩展我们的知识范围,那么小说阅读器有这么多到底哪个更好呢?下面小编为大家挑选一些比较好用的小说阅读器。 小说阅读器相关专题:免费小说阅读器 本站还提供小说阅读器手机端,需要的用户请查看:手机小说阅读器专题。

软件资讯

更多>
  • 瑞幸咖啡app如何更换头像

    瑞幸咖啡app如何更换头像

    在如今数字化的时代,手机应用成为了我们生活中不可或缺的一部分。瑞幸咖啡app不仅为我们提供便捷的咖啡购买服务,还能让我们个性化地展示自己。那么,瑞幸咖啡app怎么换头像呢?下面就为大家详细介绍。首先,打开瑞幸咖啡app。进入主界面后,我们可以看到右下角有一个“

  • 小爱同学恢复出厂设置后如何连接

    小爱同学恢复出厂设置后如何连接

    小爱同学为我们的生活带来了诸多便利,但有时恢复出厂设置后,连接就成了问题。别担心,下面详细介绍恢复出厂设置后连接小爱的方法。确认网络环境首先,要确保你的手机或其他连接设备已连接到稳定的wi-fi网络。良好的网络是小爱同学正常运行和连接的基础。如果网络不稳定,可

  • 千本笔记如何删除笔记本

    千本笔记如何删除笔记本

    在使用千本笔记的过程中,有时我们会产生一些不再需要的笔记本,这时候就需要将它们删除。那么千本笔记怎么删除笔记本呢?下面就为大家详细介绍。首先,打开千本笔记应用程序。进入主界面后,我们可以看到自己创建的各个笔记本。找到想要删除的笔记本,长按该笔记本的图标。此时会

  • 花瓣app如何设置性别

    花瓣app如何设置性别

    在花瓣app的缤纷世界里,设置性别可是个性化旅程中重要的一步哦!它能让你更好地与志同道合的小伙伴互动,精准发现心仪内容。那么,花瓣app究竟该怎么设置性别呢?别着急,下面就为你详细揭秘。打开花瓣app,进入到个人页面。在这里,你会看到许多关于个人信息的选项。一

  • 蜜蜂剪辑怎么更改视频对比度

    蜜蜂剪辑怎么更改视频对比度

    在视频编辑过程中,调整对比度是一项常见且重要的操作,它能够显著提升视频的视觉效果。蜜蜂剪辑作为一款功能强大的视频编辑软件,为用户提供了便捷的对比度调整方式。打开蜜蜂剪辑并导入视频首先,启动蜜蜂剪辑软件。进入主界面后,点击“导入”按钮,选择你想要编辑的视频文件,

  • 腾讯视频如何关注视频作者

    腾讯视频如何关注视频作者

    在腾讯视频的精彩世界里,关注喜爱的视频作者是与优质内容紧密相连的重要方式。那么,腾讯视频究竟该怎么关注视频作者呢?首先,打开腾讯视频app。当你浏览视频时,在视频播放界面的左上角或右上角,通常能看到视频作者的头像。点击作者头像,会进入作者的个人主页。在个人主页

最新更新

更多>

注意事项

本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系版权说明注意事项)。若有关在线投稿、无法下载等问题,请与本站客服人员联系
用户可自行按线路选择相应的下载点,可以直接点击下载/另存为,若直接点击下载速度太慢,请尝试使用高速下载器。为确保下载的文件能正常使用,请使用WinRAR最新版本解压本站软件。
建议大家谨慎对待所下载的文件,大家在安装的时候务必留意每一步!关于360安全卫士QQ电脑管家的有关提示,请自行注意选择操作。