【动态网站资源保存下载】

news2024/10/9 19:39:13

文章目录

    • 概要
    • 解决思路
    • 技术细节
    • 小结

概要

我们在网上浏览网站时,经常有这样的需求:将浏览的网页保存下来,即使无网的情况下也可以继续浏览。比如一些教育类网站的PPT,内容为HTML格式的,无法作为PPT格式下载下来,就需要将网页内的资源(包括html,css,js,png等)全部下载下来。这类PPT内容是需要不断点击下一页才能动态的展示后面的内容的,这就需要我们点击到最后一页才能把全部资源都展示出来。

解决思路

如何将网页上的动态资源下载下来呢?
通过查找资料,大部分网友推荐了这两个chrome浏览器插件:Save All Resources 和 猫抓。但通过测试并不能完全满足需求。Save All Resources 插件不太稳定,有些小BUG,偶尔下载不了文件和漏掉资源文件,优点是下载下来的资源保持原资源的文件夹结构,直接打开离线HTML和在线功能一致。猫抓能够嗅探到资源并能较快的下载,但是没有保留原资源的文件夹结构。
基于上面插件的缺点,最终决定使用RPA软件影刀加脚本来实现动态资源下载。一是影刀RPA可以完成PPT网页内的下一页按钮自动点击。二是影刀RPA可以通过脚本代码下载所有资源文件,灵活性更高。

技术细节

  • 实现PPT的下一页按钮的自动点击
    这个对于影刀来说,so easy。可以参考影刀官网上的网页自动化中的教学课程学习,主要是使用点击元素,捕捉元素功能,判断元素是否可见(用在最后一页时的判定,捕捉按钮灰化)
    在这里插入图片描述
  • 实现下载动态资源
    通过F12打开开发者工具,选择上方的“网络”选项卡,当点击PPT中的下一页按钮时,会刷新显示所有要下载的资源,通过影刀捕捉元素然后获取到下载链接,逐一下载资源。
    目前这个方案下载速度较慢,因为使用的影刀提供的HTTP下载,一个个下载有点慢,没有找到多线程方案,可以选择晚上不用电脑时自动完成。
    在这里插入图片描述
    在这里插入图片描述
    “网络”选项卡中的资源列表本身是动态加载的,使用影刀捕捉元素时显示的并不是全部资源,所以需要借助键盘按键“上箭头”,切换元素。

小结

通过借助影刀RPA可以实现很多手动操作由脚本驱动自动完成,节省了时间与精力,目前方案不足之处就是不是多线程下载,速度慢。有个小Bug就是偶尔会按F12时打不开开发者工具导致的脚本无法顺利完成。从整体上看,还是不错的办法,用了4个小时将站点PPT都离线下载下来了,再也不用担心网络不好或者无网了。

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

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

相关文章

鸿蒙NEXT开始公测,哪些机型可以升级?鸿蒙版微信界面简洁

华为 Harmony OS NEXT 于10月8日正式开启公测,对鸿蒙 NEXT 系统感兴趣,想要第一时间尝鲜鸿蒙系统的话,千万不要错过本篇文章! 哪些手机可以参与鸿蒙 NEXT 公测? 首批参与鸿蒙 NEXT 公测的机型有华为 Mate 60 系列、华…

大型企业的云容器和javaee的关联技术

目前在企业中,尤其是大型互联网企业中,云容器越来越重要,原因是:云容器的架构能够提供一整套的,自动提交,自动打包,自动部署,自动重启,动态配置的解决方案 云容器的整体结…

21亿收官,2024年国庆档没有抱怨市场的资格

截至10月7日晚上8点,2024年国庆档票房已接近21亿大关,但成绩基本定格于此,较去年减少了7亿,回落至2018年水准。 在经历了暑假档票房较去年大幅下滑、中秋档票房回归至2014年水平后,国内电影市场对于国庆档表现出一种复…

【Fine-Tuning】大模型微调理论及方法, PytorchHuggingFace微调实战

Fine-Tuning: 大模型微调理论及方法, Pytorch&HuggingFace微调实战 文章目录 Fine-Tuning: 大模型微调理论及方法, Pytorch&HuggingFace微调实战1. 什么是微调(1) 为什么要进行微调(2) 经典简单例子:情感分析任务背景微调 (3) 为什么微调work, 理论解释下 2…

《2024世界机器人报告》:中国为全球最大市场

国际机器人联合会(IFR)在9月24日最新发布的《世界机器人报告》中表示,全球有约428万台机器人在工厂运行,同比增长10%。工业机器人年安装量连续第三年超过50万台,在2023年新部署的工业机器人中,有70%在亚洲&…

基于Springboot+Vue的物业智慧系统 (含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 在这个…

WordPress添加https协议致使后台打不开解决方法

由于删除WordPress缓存插件后操作不当,在加上升级处理,致使茹莱神兽博客的首页出现了https不兼容问题,WordPress后台也无法登陆,链接被误认为是定向重置次数过多,在网上找了好久的答案。 还有就是求助了好些人&#xf…

C++ —— 优先级队列(priority queue)的模拟实现

目录 杂谈 vector和list的区别 1. 优先级队列的定义 2. 优先级队列的模拟实现 3. 仿函数 链接: priority_queue - C Reference (cplusplus.com)https://legacy.cplusplus.com/reference/queue/priority_queue/?kwpriority_queue 杂谈 vector和list的区别 在…

Elastic Stack--16--ES三种分页策略

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 方式一:from size实现原理使用方式优缺点 方式二:scroll实现原理使用方式优缺点 方式三:search_after实现原理使用方式优缺点 三…

两个pdf怎么合并成一个pdf?超简单的合并方法分享

在日常工作和学习中,我们经常会遇到需要将多个PDF文件合并成一个文件的情况,以便更好地管理和分享。今天,将为大家详细介绍5种实用的方法,能够一键合并多个PDF文件,有需要的小伙伴快来一起学习下吧。 方法一&#xff1…

双十一买什么?双十一买什么东西最划算?超全双十一购物指南!

双十一即将到来,一年一度的购物狂欢盛宴再度开启!在海量的商品面前,怎样挑选出既心仪又实惠的好物,已然成为大家关注的重点。下面为您呈上一份极为全面的2024年双十一必买清单,助力您轻松购物,收获满满&…

详解Xilinx JESD204B PHY层端口信号含义及动态切换线速率(JESD204B五)

Xilinx官方提供了两个用于开发JESD204B的IP,其中一个完成PHY层设计,另一个完成传输层的逻辑,两个IP必须一起使用才能正常工作。 7系列FPGA只能使用最多12通道的JESD204B协议,线速率为1.0至12.5 Gb/s;而UltraScale和Ult…

胤娲科技:AI评估新纪元——LightEval引领透明化与定制化浪潮

AI评估的迷雾,LightEval能否拨云见日? 想象一下,你是一位AI模型的开发者,精心打造了一个智能助手,却在最终评估阶段遭遇了意外的“滑铁卢”。 问题出在哪里?是模型本身不够聪明,还是评估标准太过…

新手如何打造抖音矩阵账号,矩阵账号的优势有哪些?如何搭建矩阵系统的源码开发oem部署

抖音新手如何打造爆款矩阵账号? 在当前数字媒体盛行的时代,抖音作为一个领先的短视频分享平台,为品牌和个人提供了展示自己的舞台。对于初学者而言,构建一个有效的抖音账号矩阵是提升影响力的关键策略!今天&#xff0c…

mysql内置函数查询

聚合函数 :聚合函数查询时纵向查询,它是对一列的 值进行计算,然后返回一个单一的值,聚合函数会忽略空值。 namedescriptionavg()返回参数的平均值bit_and()按位返回andbit_or()按位返回orbit_xor()按位返回异或count()返回返回的…

Uos-Uos使用Remmina通过VNC远程连接到另一台Uos

Uos使用Remmina通过VNC远程连接到另一台Uos 一、概述二、对端机器安装 VNC服务器三、本机远程对端服务器 一、概述 这里记录一下使用Remmina通过VNC远程连接到另一台Uos系统,环境均是Linux操作系统 本机ip:10.8.11.64 对端ip:10.20.42.17 …

进程的状态的理解(概念+Linux)

文章目录 进程的状态并行和并发物理和逻辑 时间片进程具有独立性等待的本质运行阻塞标记挂起等待 Linux下的进程状态(一)运行状态(R - running)(二)睡眠状态(S - sleeping)&#xff…

银河麒麟V10中启用SELinux

银河麒麟V10中启用SELinux 1、启用SELinux1.1 切换到strict模式1.2 注意 2、验证SELinux状态 💖The Begin💖点点关注,收藏不迷路💖 在银河麒麟高级服务器操作系统V10中,可以使用security-switch工具来启用SELinux&…

springboot邮件群发功能的开发与优化策略?

springboot邮件配置指南?如何实现spring邮件功能? SpringBoot框架因其简洁、高效的特点,成为了开发邮件群发功能的理想选择。AokSend将深入探讨SpringBoot邮件群发功能的开发过程,并提出一系列优化策略,以确保邮件发送…

香山南湖架构分析--FE

总体架构 分支预测和指令缓存,通过FTQ达到解耦的目的;FTQ将请求送给ICache,进行取指;取出的指令码通过预译码初步检查分支预测的错误并及时冲刷预测流水线;检查后的指令送入指令缓冲并传给译码模块,最终形成后端的指令…