利用AI Chat 将电子书自动截屏并保存成pdf文件

news2024/11/29 4:35:53

电子书如果要下载下来,无非就两种类型的方法,一种是从内部破解,通常是某些极客将软件破解成免费版,但是风险也大。另一种是从外部破解,就是截屏保存,然后将所有图片拼成pdf文件。

如果要将整本电子书截屏保存,那么截屏的动作重复度极高。计算机不就是擅长做重复性的动作,那么只要让计算机:

截屏
保存
下一页
是否结束
保存成PDF

一直重复这个动作,知道满足条件后保存成PDF文件,
理论成立,便可实践
作为一个开发能力不强,代码能力不强的小白,纯靠手搓的话,头发都会秃掉。最近ChatGPT等AI Chat 很火,而且很智能,能够回答我们大部分的问题。我最近也在用百度的文心一言,挺好用的,大大减少了我检索的时间,以至于后面我要实践的内容,也是通过文心一言辅助我完成。

  1. 既然需要用电脑操作,那么我们就需要将手机或平板上的内容进行投屏
    市面上的投屏工具普遍需要VIP才能投屏,显然不符合我白嫖的性格,通过文心一言搜索:用开源的工具将手机屏幕通过数据线投影到电脑上(问问题的方式真的很重要,不然就给你推荐一些需要付费的投屏软件),接下来我会通过问AI问题的形式 ,实现将电子书自动截屏并保存成pdf文件这个功能。既然是AI回答问题,那么不同的时间不同的场景问相同的问题得到的答案是不一样的
    在这里插入图片描述
    于是就给我介绍了scrcpy,作为一个用爱发电的作者,这么好用的工具我肯定不会藏着掖着,这个通过问问题可是很难找到答案的,链接奉上: scrcpy-手机投屏到电脑<–这里面有下载和如何使用scrcpy的教程

  2. 如何用python去控制键盘和鼠标,不知道的话可以问问AI
    在这里插入图片描述

import pyautogui  
  
# 移动鼠标到屏幕的(100, 100)坐标处  
pyautogui.moveTo(100, 100, duration=0.25)  
  
# 点击鼠标左键  
pyautogui.click()  
  
# 输入文本  
pyautogui.write('Hello, world!', interval=0.25)  
  
# 按下键盘上的"Enter"键  
pyautogui.press('enter')

现在我们已经找到需要使用的pyautogui库了,既然这个库都能控制键盘和鼠标了,那问问pyautogui库能不能截屏
在这里插入图片描述

import pyautogui  
  
# 截取屏幕并保存为图像文件  
screenshot = pyautogui.screenshot()  
screenshot.save('screenshot.png')

在这里插入图片描述

import pyautogui  
  
# 截取屏幕中心1000x1000区域的截图,并保存为PNG格式的文件  
screenshot = pyautogui.screenshot(region=(0, 0, 1000, 1000))  
screenshot.save('screenshot.png')
  1. 截屏的话就需要指定区域截屏,多余的部分就挺多余的。我们都不知道要截多少才刚好,除非能定位鼠标的位置,所以再问问AI
    在这里插入图片描述
import pyautogui  
  
# 获取鼠标当前位置  
mouse_position = pyautogui.position()  
  
print("鼠标当前位置:({0}, {1})".format(mouse_position[0], mouse_position[1]))
  1. 我们已经把截屏和保存的工作做完了,根据流程,我们需要通过按左右键进行前后翻页,那就再问问AI
    在这里插入图片描述
    这样我们就能实现翻页的功能。
    然后一直重复该操作,直到截屏结束
  2. 如何将图片拼接成PDF文件呢
    在这里插入图片描述
from PIL import Image  
  
# 打开图片文件  
image = Image.open('image.jpg')  
  
# 将图片保存为PDF文件  
image.save('output.pdf')

在这里插入图片描述

from PIL import Image  
  
# 图片文件夹路径  
image_folder = r'F:\pdfscreenshot\inputscreenshot'  
# 获取图片文件夹中所有图片文件名  
image_files = [os.path.join(image_folder, f) for f in os.listdir(image_folder) if f.endswith('.jpg') or f.endswith('.png')]   
  
# 创建新的空白图片,大小与第一张图片相同  
images = [Image.open(file) for file in image_files]  
  
# 创建新的PDF文件并将图片添加到其中  
images[0].save('output.pdf', 'PDF', save_all=True, append_images=images[1:])
  1. 总结一下,AI Chat 可以大大的缩短我们检索的时间,同时也可以给我们提供更多的思路,但是却无法替代我们做完复杂的事情。这更像是造机器,AI Chat 不可能给我们造出符合我们需求的机器,只能给我们提供工具和零件,然后我们需要自己去设计和组装。
    在这里插入图片描述

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

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

相关文章

Flutter笔记:完全基于Flutter绘图技术绘制一个精美的Dash图标(上)

Flutter笔记 完全基于Flutter绘图技术绘制一个精美的Dart语言吉祥物Dash&#xff08;上&#xff09; 作者&#xff1a;李俊才 &#xff08;jcLee95&#xff09;&#xff1a;https://blog.csdn.net/qq_28550263 邮箱 &#xff1a;291148484163.com 本文地址&#xff1a;https://…

测开 (Junit 单元测试框架)

目录 了解 Junit 引入相关依赖 1、Junit注解 Test BeforeEach、BeforeAll AfterEach && AfterAll 2、断言 1、Assertions - assertEquals 方法 2、Assertions - assertNotEquals 方法 3、Assertions - assertTrue && assertFalse方法 4、Assertions…

nodejs+vue人脸识别考勤管理系统的设计与实现-计算机毕业设计

根据分析&#xff0c;本系统主要有3个角色&#xff1a;管理员、用户、考勤系统。 &#xff08;1&#xff09;管理员&#xff1a;管理员信息的添加、删除、修改和查询&#xff0c;用户信息添加、删除、修改和查询。 &#xff08;2&#xff09;用户&#xff1a;用户的注册和登录&…

[红蓝攻防]MDOG(全新UI重制版)为Xss跨站而生,数据共享,表单劫持,URL重定向

说明 功能Cookie窃取表单劫持(钓鱼账密)重定向流量劫持多平台数据推送钉钉数据推送 运行窗口 ./dist目录下已生成exe文件,双击打开 Cookie窃取 点击运行服务,复制以上的payload,payload怎么变形那么你可已去混淆 payload在页面执行 受害者访问存在xss漏洞的页面时受到攻击,…

【软考】系统集成项目管理工程师(十)项目质量管理【3分】

一、质量概念 1、定义 国际&#xff1a;反应实体满足主体明确和隐含需求的能力的特性总和 国内&#xff1a;一组固有特性满足要求的程度 2、质量与等级 质量&#xff1a;作为实现的性能或成果&#xff0c;是一系列内在特性满足要求的程度ISO9000 等级&#xff1a;作为设计意…

阅读JDK源码的经验分享

理论先行。阅读某一个模块时&#xff0c;先搜索它的理论支撑&#xff0c;甚至可以先看别人的阅读经验&#xff0c;有了一个大致的了轮廓之后&#xff0c;自己再去实践。 必须试用。面对一个新的类&#xff0c;最好是先搜索一下它的基本用法&#xff0c;写成一个小的示例&#…

Camtasia mac版怎么加字幕 Camtasia mac版怎么打马赛克

在视频制作过程中&#xff0c;字幕和马赛克是两项非常常用的编辑功能&#xff0c;添加字幕可以提高观众的观看体验&#xff0c;添加马赛克可以保护视频创作者不想公开的画面内容。Camtasia作为一款知名的视频制作软件&#xff0c;在具备基本的录制和视频编辑功能的同时&#xf…

麻匪音频识别-网易云-BetterNCM(目前仅网易云支持)

麻匪音频识别-网易云-BetterNCM&#xff08;目前仅网易云支持&#xff09; 这个东西很帅的哦&#xff0c;你网易云放什么歌他就联动什么&#xff0c;自动变 首先下载一点东西 1.steam 2.steam里面搜索wallpaper下载&#xff08;这个免费的哈&#xff09; 3.然后到这个界面 搜…

【软考】系统集成项目管理工程师(十一)项目人力资源管理【2分】

一、 人力资源管理【ITO口诀版】 二、 规划人力资源管理 1、定义 &#xff08;1&#xff09;确定项目的角色、职责以及汇报关系&#xff0c;并编制人员配备管理计划 &#xff08;2&#xff09;作为项目最初阶段的一部分。但是这一过程的结果应当在项目的整个生命周期中进行经…

GoLand GC(垃圾回收机制)简介及调优

GC(Garbage Collector)垃圾回收机制及调优 简单理解GC机制 其实gc机制特别容易理解&#xff0c;就是物理内存的自动清理工。我们可以把内存想象成一个房间&#xff0c;程序运行时会在这个房间里存放各种东西&#xff0c;但有时候我们会忘记把不再需要的东西拿出去&#xff0c…

Go学习第十五章——Gin参数绑定bind与验证器

Go web框架——Gin&#xff08;参数绑定bind与验证器&#xff09; 1 bind参数绑定1.1 JSON参数1.2 Query参数1.3 Uri绑定动态参数1.4 ShouldBind自动绑定 2 验证器2.1 常用验证器2.2 gin内置验证器2.3 自定义验证的错误信息2.4 自定义验证器 1 bind参数绑定 在Gin框架中&#…

Unity Meta Quest 一体机开发(三):Oculus Integration 基本原理、概念与结构+玩家角色基本配置

文章目录 &#x1f4d5;教程说明&#x1f4d5;输入数据&#x1f4d5;Oculus Integration 处理手部数据的推荐流程&#x1f4d5;VR 中交互的基本概念&#x1f4d5;Oculus Integration 中的交互流程&#x1f4d5;配置一个基本的玩家物体⭐OVRCameraRig⭐OVRInteraction⭐OVRHandP…

MC红显材质包安装

红显材质包安装 UP介绍视频 https://www.bilibili.com/video/BV1ML4y1u7nd/?vd_source3b8afcc2613780d7607382bae034945a 材质包下载地址&#xff1a; 需要 OptiFine 或 CITResewn 模组&#xff08;以后还会支持其他自定义贴图模组&#xff09; 下载&#xff1a;https://xek…

【python与数据结构】(leetcode算法预备知识)

笔记为自我总结整理的学习笔记&#xff0c;若有错误欢迎指出哟~ python与数据结构 Python 中常见的数据类型数据结构1.数组&#xff08;Array&#xff09;2.链表&#xff08;Linked List&#xff09;3.哈希表&#xff08;Hash Table&#xff09;4.队列&#xff08;Queue&#x…

7.多线程之单例模式

单例模式 文章目录 单例模式1. 什么是单例模式2. 饿汉模式3. 懒汉模式3.1 单线程版&#xff1a;3.2 多线程版 1. 什么是单例模式 单例模式是一种设计模式&#xff0c;常见的设计模式还有工厂模式、建造者模式等。 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码…

Java练习题2022-1

HashSet是Java中常用的Set集合&#xff0c;向HashSet集合中添加数据对象时&#xff0c;首先会调用对象的hashCode()方法获取哈希码&#xff0c;根据哈希码计算对象的存储位置&#xff0c;如果相应位置上已经有数据对象&#xff0c;则会调用对象的equals()方法判断新加入的对象与…

【HarmonyOS】鸿蒙操作系统架构

HarmonyOS架构 一. 鸿蒙系统定位二. 架构整体遵从分层设计三. HarmonyOS具有的技术特性四. HarmonyOS有三大特征 其它相关推荐&#xff1a; 软考系统架构之案例篇(架构设计相关概念) 系统架构之微服务架构 系统架构设计之微内核架构 所属专栏&#xff1a;系统架构设计师 一. 鸿…

分类预测 | Matlab实现KOA-CNN-LSTM-selfAttention多特征分类预测

分类预测 | Matlab实现KOA-CNN-LSTM-selfAttention多特征分类预测 目录 分类预测 | Matlab实现KOA-CNN-LSTM-selfAttention多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现KOA-CNN-LSTM-selfAttention开普勒算法优化卷积长短期记忆神经网络融合…

Camtasia Mac 2023版怎么给视频加字幕

在视频制作过程中&#xff0c;字幕和马赛克是两项非常常用的编辑功能&#xff0c;添加字幕可以提高观众的观看体验&#xff0c;添加马赛克可以保护视频创作者不想公开的画面内容。Camtasia作为一款知名的视频制作软件&#xff0c;在具备基本的录制和视频编辑功能的同时&#xf…

Python运维学习Day01-文件基本操作

这里写自定义目录标题 1.遍历目录下所有的文件1.1 这里主要利用os.walk 函数的功能 2. 计算文件的 MD5 值3. 我们组合下两个函数&#xff0c;遍历下某个文件夹下的文件的md5码 1.遍历目录下所有的文件 def getFileName(directory):file_list []for dir_name, sub_dir,file_na…