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

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

  • 软件等级:4 stars.
  • 软件大小:42.39MB
  • 支持语言:简体中文
  • 授权方式:免费版
  • 软件分类:教育教学/电子阅读
  • 官网链接:
  • 更新时间:2024-02-07 03:02:02
  • 运行环境: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;

}

}

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

软件截图

查看安装过程

小说阅读器

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

软件资讯

更多>
  • airdroid如何投屏

    airdroid如何投屏

    AirDroid的投屏功能可以让用户将手机屏幕实时投影到电脑屏幕上,方便用户进行演示和分享。那么airdroid如何投屏呢?小编整理了一些相关内容分享给大家哦!airdroid如何投屏投屏到电脑第1步 从移动应用程序的安全及远程功能设置中,单击屏幕镜像的启用按钮。第2步 从电脑应用程序进入远程控制模块后,单击屏幕镜像按钮建立连接。投屏到浏览器无需下载客户可以通过浏览器直接远程控制手机的摄像头,具体

  • 华为mate60pro连接苹果耳机怎么看电量

    华为mate60pro连接苹果耳机怎么看电量

    华为mate60pro是可以连接苹果耳机的,苹果耳机也支持华为手机连接。那么华为mate60pro连接苹果耳机怎么看电量呢?想要了解具体操作的小伙伴可以跟小编一起来看看哦!连接耳机方法在华为手机中打开蓝牙设置,点击配对新设备,选择AirPods进行连接。查看耳机电量方法1、使用系统设置查看AirPods电量:进入华为手机的设置界面,找到蓝牙设置,点击已连接的AirPods设备,在设备信息中可以查看

  • 荣耀90gt耗电快怎么办

    荣耀90gt耗电快怎么办

    手机作为我们日常离不开的工具,在使用过程中如果遇到电量不足会十分困扰,很多荣耀90gt的用户想知道要怎么节省电量,今天就由小编做出解答,赶快一起学习一下吧! 荣耀90gt节省电量方法介绍方法一:使用一键优化自动诊断优化。可以使用系统管家界面的一键优化功能,实现省电续航。方法二:点击耗电排行,查看耗电高的应用。进入设置>电池>耗电排行,查看正在运行的高耗电应用,如果暂时不需要运行,请点击

  • 国家医保服务平台app如何激活医保

    国家医保服务平台app如何激活医保

    国家医保服务平台提供了医保激活功能,用户可以通过该平台激活自己的医保电子凭证,享受更加便捷的医保服务。那么国家医保服务平台app如何激活医保呢?国家医保服务平台app如何激活医保1、点击首页进行账号登录2、登录后再次点击进行激活3、人脸识别通过后选择参保地4、激活成功后就能领取凭证好了,今天的分享就到这里了,想要了解更多热门资讯教程就来非凡软件站,快快收藏吧,更多精彩不容错过!

  • 支付宝集五福通用红包如何使用

    支付宝集五福通用红包如何使用

    支付宝集五福的活动中拥有很多的道具能够让我们使用,就例如集五福的通用红包,有很多的小伙伴不是很清楚,该如何去使用这个红包,小编这里准备了一些使用相关教程,快来看看吧!支付宝集五福通用红包该如何使用答案:可拆分多次在各场景使用,包括在使用支付宝支付时的线上支付、线下支付场景,实际可使用范围以红包是否可抵扣的前台显示。使用时需要注意:1、红包有效期自领取之后5天内有效,红包过期后不予补发;2、红包仅限

  • iQOONeo9Pro支持连接小米手环吗

    iQOONeo9Pro支持连接小米手环吗

    现在科技发达,大家都喜欢使用智能手表取代普通手表,能够随时监测自己的健康,很多使用iQOONeo9Pro的用户想知道设备是否能连接小米手环,下面就由小编来解答一下。 iQOONeo9Pro匹配小米手环方法介绍打开手机应用商店;下载安装小米穿戴app;登录小米账号。点击我的,点击添加新设备;选择自己的手环型号;点击【允许】。打开手机蓝牙;手机会自动搜索小米手环;在手环上绑定即可连接手机。以上就是小编

最新更新

更多>

注意事项

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