【技能拾遗】——如何寻找/制作电子书

📖 前言:无纸化学习已经越来越流行了,尤其是这几年大家上网课,把厚厚的课本和笔记装进pad里面,其便利性想必大家都深有感受。但是还有不少同学不知道该如何去找正规教材的PDF版本,下面就以我这两年的无纸化学习经验来与大家分享下~


目录

  • 🕒 1. 判断一本电子书的阅读体验好坏
  • 🕒 2. 找
    • 🕘 2.1 网站下载
    • 🕘 2.2 文献传递
    • 🕘 2.3 公众号/资源群
    • 🕘 2.4 去水印问题
  • 🕒 3. 爬虫
  • 🕒 4. 拍
  • 🕒 5. 实战

🕒 1. 判断一本电子书的阅读体验好坏

当我们在选择电子书时,以下几个因素可以帮助我们判断一本电子书的阅读体验是否良好:

  • 清晰度:电子书是原版还是扫描版?原版不仅意味着更高的清晰度,还有完善的目录与更低的体积空间。当然这是可遇而不可求的,基本上我们能寻找的都是扫描版,除非你是编者
  • 目录:电子书是否有完整的目录?一个清晰、完整的目录可以让我们更好的定位内容,即使没有我们也能自己制作。
  • OCR:电子书是否进行了OCR处理?进行了OCR处理的电子书,我们可以进行搜索和复制操作,这个也是能一键完成的。
  • 格式:电子书的格式是否为PDF?在Zlib的网站上可能会有部分equb格式的电子书,这类格式在移动端阅读体验良好,但不能在上面自由的书写与做笔记,除非将其转换为PDF。
  • 体积大小:电子书的体积大小是否合适?之前得到过一本计算机网络的电子书,清晰度不错但体积高达400M。
  • 超链接:电子书中是否包含超链接?比如你遇到部分专业名词或引用时,超链接可以快速跳转到相关的内容或网页。

🕒 2. 找

🕘 2.1 网站下载

🔎 Zlibrary — 全球最大的电子图书馆

我们要搜索《现代操作系统》这本书,就可以直接进去搜索。
在这里插入图片描述

在这里插入图片描述

可以看到,其阅读体验还是不错的,有目录、有OCR、清晰度尚可。

如果你的英语能力出众,阅读英文原版书将会是最原汁原味的体验,而且此类电子书网站往往有完美形态的英文原版书。因为米国的实体书太贵了 。比如下面就是《现代操作系统》的原版书《Modern Operation Systems》,且已经出到第5版(此时译制版还在第4版)
在这里插入图片描述

在这里插入图片描述
可以看到,这本原版书有1000多页,但体积只有惊人的8.5MB。

🕘 2.2 文献传递

众所周知,学习通是一款学习软件,上面有很多宝藏功能值得我们慢慢挖掘。其背后的超星图书馆,在学习通上可以直接使用。比如我们需要寻找的电子书,部分可以直接搜索并下载。
在这里插入图片描述

如果你能查询到电子书但没有下载或文献传递的按钮,试试下面的网站。其实某宝的电子书代下也是根据这个网站查找资源

🔎 全国图书馆参考咨询联盟

用书名、作者或者ISBN(最精确)查询搜索
在这里插入图片描述

如果你搜的书有文献传递的链接,那么你就可以每天下载50页,之后白嫖一本书。当然要是有多个账号,可以加快进度哦~

在这里插入图片描述

如果你既想要快点得到这本书,还要目录,还是发挥钞能力吧~

以下是本人之前在某宝买的,基本上是3r一本。
在这里插入图片描述

当然,还可以选择文档互助的浏览器插件,如下,一本书基本上只要2r。
在这里插入图片描述

🕘 2.3 公众号/资源群

根据经验,大一的公共课书籍(如高数、思政类)都能很容易找到,而专业课书籍往往不好找。这时候可以通过微信的搜一搜、阿里盘的分享、相关领域的Q群去获取。

如下是按出版社分类的电子书,利用搜索功能即可查询。
在这里插入图片描述

注:相关的阿里盘资源链接我不会提供,也不要私信问,大家凭自己本事获取哦~

🕘 2.4 去水印问题

根据多年的实践,除去自带标准水印可被WPS去除外,非标准水印的去除一直是难题,直到下面软件的出现,才解决了问题。

🔎 PDF Guru Anki

PDF Guru是一个通用型PDF文件处理工具,包含PDF合并、拆分、旋转、水印、加密、转换等20多项常用功能,完全开源,个人免费使用,界面简洁,简单易用。

PDF去水印还能这么玩?再也不用花钱去水印了

🕒 3. 爬虫

如果你的编程水平不错,同时又掌握亿点点前端的知识,那么爬取这些资源可以说易如反掌(有电子书权限的前提)

以《计算机组成原理》这本书举例,找到相应出版社官网,点击试读:

在这里插入图片描述
在这里插入图片描述
这种就是属于比较好爬取的电子书网站,由于我没有电子书的权限,后续页面只能通过拍实体书解决。

🕒 4. 拍

当穷尽一切资源后,发现没有电子书可找,就只能自己一张一张拍实体书解决。如果你有钞能力,可以选择某宝的扫描服务,但是通常都需要拆书,没这个必要。

如果你选择拍书,注意选择相机的文档模式-增强,之后使用多图片合并转为PDF即可。

🕒 5. 实战

现需要《网络安全技术-微课视频版》这本书

已知此书是清华社的,且我校购买了电子资源
在这里插入图片描述在这里插入图片描述
先尝试是否有爬虫代码可供参考,之后在GitHub搜到一份,但大概率已失效。

🔎 YAU 文泉学堂PDF下载

由于本人没有学过前端,也许按键精灵更有效 ,爬虫放弃,转向人工,先试试有没有试读资源减少工作量。
在这里插入图片描述
可以看到,在清华社的另一个网站水木书荟,有试读资源(两份高质量的原版PDF)

剩下的,只能一张张截图了,我们使用WPS的“多图片合并为PDF”,没有会员可以考虑其他软件平替,或者将图片先转成PDF后再合并。
在这里插入图片描述

四周页面裁剪一下,就得到一个还不错的PDF。

但是在合并截屏PDF和之前的试读PDF时,出现了下面的PDF页面一大一小的情况(缩放问题)
在这里插入图片描述

在这里我们使用PDF补丁丁这款软件进行优化处理:
🔎 PDF 补丁丁(PDFPatcher)

将PDF补丁丁的常用工具栏调出来以后,选择批量修改文档,在打开的新窗口右下角,点击设置PDF文件修改方式。尺寸处有很多选项,比较常用的就是“等同页面最大尺寸”和“等同页面最小尺寸”。这两个选项就可以帮助我们将PDF中的所有页面统一尺寸了,要么跟最大的页面一样,要么跟最小的页面一样。两种方式处理后的PDF文档大小上都是差不多的,而且观感上也没有太大差别。

在这里插入图片描述

在这里插入图片描述

之后对其做OCR处理,此处使用WPS的“扫描件识别”功能,没有会员可以考虑其他软件平替。
在这里插入图片描述

最后加上目录,我们可以在文泉书局中找到目录,直接复制
在这里插入图片描述

之后可以选择PDF Guru这款软件进行书签转换(就是区分清楚标题的层级)

在这里插入图片描述

emm但是这款软件我似乎没转换成功,最后借助万能的AI搞定~
在这里插入图片描述
最终成果:
在这里插入图片描述
有OCR、有目录、清晰度尚可,结束~


❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/614314.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RTL编码(1)——概述

一、RTL级描述 RTL(Register Transfer Level)级:寄存器+组合逻辑,其功能与时序用Verilog HDL(以下简称Verilog)或VHDL代码描述。 RTL描述包含了同步数字电路最重要的三个特征:组合逻…

SQLServer 系统概述

目录 1.SQL语言的发展和特点 2.SQL语言的特点 1.SQL语言的发展和特点 SQL是利用一些简单的语句构成的基本语法,来存储数据库的内容。目前已经成为关系型数据库系统中使用最广泛的语言。 1974年SQL语言由Boyce和Chamberlin提出来。 1975~1979年研制了著名的关系数…

外贸自建站新手教程指南?海洋建站的技巧?

外贸自建站怎么做比较好?搭建外贸网站的参数有哪些? 外贸自建站成为许多企业迈向国际市场的重要一步。随着全球经济的不断发展,搭建一个专业而有效的外贸自建站对企业而言至关重要。海洋建站将为您提供一份详尽的新手教程指南,帮…

通过Studio 3T对Mongodb进行 创建数据库/集合 增删查改集合文档操作

首先 你需要安装Studio 3T 以及启动 Mongodb服务 具体可以参考我的文章 Studio 3T客户端连接Mongodb数据库服务 我们之前 通过 use 数据库名随便输切换是可以的 但除了这里能看到的 它们都仅存在于内存 我们右键顶部菜单 选择 添加数据库/创建数据库 这里 我们输入数据库名称…

HarmonyOS自定义组件生命周期函数介绍

aboutToAppear 在创建自定义组件的新实例后,在执行其build()函数之前执行。允许在aboutToAppear函数中改变状态变量,更改将在后续执行build()函数中生效。 aboutToDisappear 在自定义组件析构销毁之前执行。不允许在aboutToDisappear函数中改变状态变…

【Leetcode】253.会议室II

一、题目 1、题目描述 给你一个会议时间安排的数组intervals,每个会议时间都包括开始和结束时间 intervals[i] = [starti,endi],为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要多少间会议室,才能满足这些会议安排。 示例1: 输入:intervals = [[0,3…

rust中Atomic Ordering含义总结

Relaxed 最基础的内存排序要求,只要求当前原子操作是要么完全执行,要么还未执行,其操作结果的可见性同步在其他线程没有任何顺序的保证Acquire 适用于读取数据操作,要求: 当前线程不能有其他的读或写被 reorder 在 loa…

java基础day04 -- 命令行运行java文件

package com.exmaple;/*** 命令行参数*/ public class ArgsOfMain {public static void main(String[] args) {//增强for循环for(String arg : args){System.out.println(arg);}} }当我打开idea终端运行javac命令完成后(需要配置java环境变量,注意idea使…

安德尔房产数据分析

安德尔房产数据分析 安德尔房产数据分析介绍挑战概要数据集添加地理数据数据清理数据分析与解释结论困难与解决方案 安德尔房产数据分析 介绍 在这个挑战中,使用了 pandas 和数据可视化库(Matplotlib、Seaborn)来对数据集进行分析&#xff…

Django 简介 应用场景 优势 不足

简介 Django 是一个开放源代码的 Web 应用框架,使用 Python 编程语言编写。它遵循了 “MTV”(模型-模板-视图)的设计模式,旨在帮助开发者快速构建高质量、易维护的 Web 应用程序。 应用场景 Web 应用开发:Django 适…

231.【2023年华为OD机试真题(C卷)】小明找位置(二分查找-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-小明找位置二.解题思路三.题解代码Python题解代…

MySQL中order by是怎么工作的?

在如上图中所示的explain的执行结果中,Extra字段中的“Using filesort”表示的就是需要排序,MySQL会给每个线程分配一块内存用于排序,称为sort_buffer。 索引city如上图所示 上述语句的执行流程如下: 1、初始化sort_buffer&…

每天刷两道题——第十二天+第十三天

1.1合并区间 以数组 i n t e r v a l s intervals intervals 表示若干个区间的集合,其中单个区间为 i n t e r v a l s [ i ] [ s t a r t i , e n d i ] intervals[i] [starti, endi] intervals[i][starti,endi] 。请你合并所有重叠的区间,并返回 …

C语言实现简易n子棋小游戏(代码含注解)

利用C语言简单实现一个n子棋小游戏,棋盘大小由自己定义 将源文件分为 执行游戏的测试文件(test.c)和保存游戏运行逻辑的相关函数的文件(game.c) 头文件中声明符号和函数的定义(game.h) 游戏执行主要依靠二维数组实现,电脑走棋采用随机值的方法简易地…

XGBoost(eXtreme Gradient Boosting)

什么是机器学习 XGBoost(eXtreme Gradient Boosting)是一种梯度提升树算法,它在梯度提升框架的基础上引入了一些创新性的特性,以提高模型性能和训练速度。XGBoost在解决结构化数据的分类和回归问题上表现出色,成为许多…

【OpenCV学习笔记05】- 鼠标作为画笔

这是对于 OpenCV 官方文档的 GUI 功能的学习笔记。学习笔记中会记录官方给出的例子,也会给出自己根据官方的例子完成的更改代码,同样彩蛋的实现也会结合多个知识点一起实现一些小功能,来帮助我们对学会的知识点进行结合应用。 如果有喜欢我笔…

leetcode-相同的树

100. 相同的树 使用递归的方法 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right class Solution:def isSameTree(self, p: …

QTAV的编译、使用及遇到的问题

最近有个功能需求,界面可以直播显示某个特定摄像头的实时画面,通过对Qt本身的 QMiediaPlayer,和其他一些在网上找到的组件做了一些对比,最终选择了QtAv作为我们的组件使用。 QtAV 是一个基于 Qt 和 FFmpeg 的跨平台、高性能多媒体播放框架。…

CSAPP - string_length反汇编

虽然先前已经把 phase_1 和 phase_2 做出来了, 但其实是参考了网络上的答案, 仅仅是大概知道了关键汇编代码。但其实并没有真的懂。为啥呢?因为很多模棱两可的地方是靠猜测的,而猜测是脆弱的。 重新看 phase_1, 第一个…

用win系统搭建Minecraft世界服务器,MC开服教程,小白开服教程

雨云VPS用Windows系统搭建我的世界世界服务器,Minecraft开服教程,小白开服教程,MC 1.19.4版本服务器搭建教程。 此教程使用 Mohist 1.19.4 服务端,此服务端支持Forge模组和Bukkit/Spigot/Paper插件,如果需要开其他服务…