当前位置: 首页 > news >正文

【backstopjs】入门安装环境

1.首先全局安装BackstopJS

npm install -g backstopjs

安装失败,常见报错&解决办法:

报错:

(venv) D:\workspace\Otaku\backstop>npm install -g backstopjs
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a keyvalue, which is much more comprehensive and powerful.
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated rimraf@2.6.3: Rimraf versions prior to v4 are no longer supported
npm warn deprecated opn@6.0.0: The package has been renamed to `open`
npm warn cleanup Failed to remove some directories [
npm warn cleanup   [
npm warn cleanup     'C:\\Program Files\\nodejs\\node_global\\node_modules\\backstopjs\\node_modules',
npm warn cleanup     [Error: EPERM: operation not permitted, rmdir 'C:\Program Files\nodejs\node_global\node_modules\backstopjs\node_modules\send\node_modules'] {
npm warn cleanup       errno: -4048,
npm warn cleanup       code: 'EPERM',
npm warn cleanup       syscall: 'rmdir',
npm warn cleanup       path: 'C:\\Program Files\\nodejs\\node_global\\node_modules\\backstopjs\\node_modules\\send\\node_modules'
npm warn cleanup     }
npm warn cleanup   ]
npm warn cleanup ]
npm error code 1
npm error path C:\Program Files\nodejs\node_global\node_modules\backstopjs\node_modules\puppeteer
npm error command failed
npm error command C:\WINDOWS\system32\cmd.exe /d /s /c node install.mjs
npm error PUPPETEER_DOWNLOAD_HOST is deprecated. Use PUPPETEER_DOWNLOAD_BASE_URL instead.
npm error Error: ERROR: Failed to set up Chrome v127.0.6533.88! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download.
npm error     at file:///C:/Program%20Files/nodejs/node_global/node_modules/backstopjs/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:58:23
npm error     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
npm error     at async Promise.all (index 0)
npm error     at async downloadBrowser (file:///C:/Program%20Files/nodejs/node_global/node_modules/backstopjs/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:90:9) {
npm error   [cause]: Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: npm.taobao.org. is not in the cert's altnames: DNS:*.tbcdn.cn, DNS:*.tao
bao.com, DNS:*.alicdn.com, DNS:*.cmos.greencompute.org, DNS:cmos.greencompute.org, DNS:m.intl.taobao.com, DNS:*.mobgslb.tbcache.com, DNS:*.alikunlun.com, DNS:alikunlun.com, DNS:*.django.t.
taobao.com, DNS:alicdn.com, DNS:*.tbcache.com, DNS:*.tmall.com, DNS:*.1688.com, DNS:*.3c.tmall.com, DNS:*.alibaba.com, DNS:*.aliexpress.com, DNS:*.aliqin.tmall.com, DNS:*.alitrip.com, DNS:
*.aliyun.com, DNS:*.cainiao.com, DNS:*.cainiao.com.cn, DNS:*.chi.taobao.com, DNS:*.chi.tmall.com, DNS:*.china.taobao.com, DNS:*.dingtalk.com, DNS:*.etao.com, DNS:*.feizhu.cn, DNS:*.feizhu.
com, DNS:*.fliggy.com, DNS:*.fliggy.hk, DNS:*.food.tmall.com, DNS:*.jia.taobao.com, DNS:*.jia.tmall.com, DNS:*.ju.taobao.com, DNS:*.juhuasuan.com, DNS:*.lw.aliimg.com, DNS:*.m.1688.com, DN
S:*.m.alibaba.com, DNS:*.m.alitrip.com, DNS:*.m.cainiao.com, DNS:*.m.etao.com, DNS:*.m.taobao.com, DNS:*.m.taopiaopiao.com, DNS:*.m.tmall.com, DNS:*.m.tmall.hk, DNS:*.mei.com, DNS:*.taopia
opiao.com, DNS:*.tmall.hk, DNS:*.trip.taobao.com, DNS:*.xiami.com, DNS:1688.com, DNS:alibaba.com, DNS:aliexpress.com, DNS:alitrip.com, DNS:aliyun.com, DNS:cainiao.com, DNS:cainiao.com.cn,
DNS:dingtalk.com, DNS:etao.com, DNS:feizhu.cn, DNS:feizhu.com, DNS:fliggy.com, DNS:fliggy.hk, DNS:juhuasuan.com, DNS:mei.com, DNS:taobao.com, DNS:taopiaopiao.com, DNS:tmall.hk, DNS:xiami.c
om, DNS:tmall.com, DNS:*.cloudvideocdn.taobao.com, DNS:cloudvideocdn.taobao.com, DNS:tbcdn.cn
npm error       at Object.checkServerIdentity (node:tls:337:12)
npm error       at TLSSocket.onConnectSecure (node:_tls_wrap:1695:27)
npm error       at TLSSocket.emit (node:events:519:28)
npm error       at TLSSocket._finishInit (node:_tls_wrap:1085:8)
npm error       at ssl.onhandshakedone (node:_tls_wrap:871:12) {
npm error     code: 'ERR_TLS_CERT_ALTNAME_INVALID',
npm error     reason: "Host: npm.taobao.org. is not in the cert's altnames: DNS:*.tbcdn.cn, DNS:*.taobao.com, DNS:*.alicdn.com, DNS:*.cmos.greencompute.org, DNS:cmos.greencompute.org, DNS:
m.intl.taobao.com, DNS:*.mobgslb.tbcache.com, DNS:*.alikunlun.com, DNS:alikunlun.com, DNS:*.django.t.taobao.com, DNS:alicdn.com, DNS:*.tbcache.com, DNS:*.tmall.com, DNS:*.1688.com, DNS:*.3
c.tmall.com, DNS:*.alibaba.com, DNS:*.aliexpress.com, DNS:*.aliqin.tmall.com, DNS:*.alitrip.com, DNS:*.aliyun.com, DNS:*.cainiao.com, DNS:*.cainiao.com.cn, DNS:*.chi.taobao.com, DNS:*.chi.
tmall.com, DNS:*.china.taobao.com, DNS:*.dingtalk.com, DNS:*.etao.com, DNS:*.feizhu.cn, DNS:*.feizhu.com, DNS:*.fliggy.com, DNS:*.fliggy.hk, DNS:*.food.tmall.com, DNS:*.jia.taobao.com, DNS
:*.jia.tmall.com, DNS:*.ju.taobao.com, DNS:*.juhuasuan.com, DNS:*.lw.aliimg.com, DNS:*.m.1688.com, DNS:*.m.alibaba.com, DNS:*.m.alitrip.com, DNS:*.m.cainiao.com, DNS:*.m.etao.com, DNS:*.m.
taobao.com, DNS:*.m.taopiaopiao.com, DNS:*.m.tmall.com, DNS:*.m.tmall.hk, DNS:*.mei.com, DNS:*.taopiaopiao.com, DNS:*.tmall.hk, DNS:*.trip.taobao.com, DNS:*.xiami.com, DNS:1688.com, DNS:al
ibaba.com, DNS:aliexpress.com, DNS:alitrip.com, DNS:aliyun.com, DNS:cainiao.com, DNS:cainiao.com.cn, DNS:dingtalk.com, DNS:etao.com, DNS:feizhu.cn, DNS:feizhu.com, DNS:fliggy.com, DNS:flig
gy.hk, DNS:juhuasuan.com, DNS:mei.com, DNS:taobao.com, DNS:taopiaopiao.com, DNS:tmall.hk, DNS:xiami.com, DNS:tmall.com, DNS:*.cloudvideocdn.taobao.com, DNS:cloudvideocdn.taobao.com, DNS:tb
cdn.cn",
npm error     host: 'npm.taobao.org',
npm error     cert: {
npm error       subject: [Object: null prototype],
npm error       issuer: [Object: null prototype],
npm error       subjectaltname: 'DNS:*.tbcdn.cn, DNS:*.taobao.com, DNS:*.alicdn.com, DNS:*.cmos.greencompute.org, DNS:cmos.greencompute.org, DNS:m.intl.taobao.com, DNS:*.mobgslb.tbcache.co
m, DNS:*.alikunlun.com, DNS:alikunlun.com, DNS:*.django.t.taobao.com, DNS:alicdn.com, DNS:*.tbcache.com, DNS:*.tmall.com, DNS:*.1688.com, DNS:*.3c.tmall.com, DNS:*.alibaba.com, DNS:*.aliex
press.com, DNS:*.aliqin.tmall.com, DNS:*.alitrip.com, DNS:*.aliyun.com, DNS:*.cainiao.com, DNS:*.cainiao.com.cn, DNS:*.chi.taobao.com, DNS:*.chi.tmall.com, DNS:*.china.taobao.com, DNS:*.di
ngtalk.com, DNS:*.etao.com, DNS:*.feizhu.cn, DNS:*.feizhu.com, DNS:*.fliggy.com, DNS:*.fliggy.hk, DNS:*.food.tmall.com, DNS:*.jia.taobao.com, DNS:*.jia.tmall.com, DNS:*.ju.taobao.com, DNS:
*.juhuasuan.com, DNS:*.lw.aliimg.com, DNS:*.m.1688.com, DNS:*.m.alibaba.com, DNS:*.m.alitrip.com, DNS:*.m.cainiao.com, DNS:*.m.etao.com, DNS:*.m.taobao.com, DNS:*.m.taopiaopiao.com, DNS:*.
m.tmall.com, DNS:*.m.tmall.hk, DNS:*.mei.com, DNS:*.taopiaopiao.com, DNS:*.tmall.hk, DNS:*.trip.taobao.com, DNS:*.xiami.com, DNS:1688.com, DNS:alibaba.com, DNS:aliexpress.com, DNS:alitrip.
com, DNS:aliyun.com, DNS:cainiao.com, DNS:cainiao.com.cn, DNS:dingtalk.com, DNS:etao.com, DNS:feizhu.cn, DNS:feizhu.com, DNS:fliggy.com, DNS:fliggy.hk, DNS:juhuasuan.com, DNS:mei.com, DNS:
taobao.com, DNS:taopiaopiao.com, DNS:tmall.hk, DNS:xiami.com, DNS:tmall.com, DNS:*.cloudvideocdn.taobao.com, DNS:cloudvideocdn.taobao.com, DNS:tbcdn.cn',
npm error       infoAccess: [Object: null prototype],
npm error       ca: false,
npm error       modulus: 'B1FED974A8DBDD9B0C84BD8312F2498247CCA50EDC8A46C7E706F64563000E9C95873B3C89B86813E25B1DDD8579981AB3E148F1010C688FA3CDF3A5815DCDE95CEEEA225EC9EA0F0E783649FC2CEFAE90
C64EE1B0EA06E2D1A9CEE93BFCE4D5A94A312716F0818E2599662DD89C377FB03E2395DB3718FA816A95D4441F1D002AC72D1CB46B479685E8DBCCABD159A96635DD1183C41C9F04A4A46C467CBF9CBD53146968DCDB1CB6F73DE3579DF6
57C8EB2F993DFF70C07BCA428B6379F1B141FE387B4E69D96BFD1BA69A577A789738D230F4E7DE3C3BD54841C9260ED598C1AE41959F8CDFD1C0CB0D9AF38F96877F3F5B75F846761F1687CF80C0EF1083',
npm error       bits: 2048,
npm error       exponent: '0x10001',
npm error       pubkey: <Buffer 30 82 01 22 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 82 01 0f 00 30 82 01 0a 02 82 01 01 00 b1 fe d9 74 a8 db dd 9b 0c 84 bd 83 12 f2 49 82 47 ... 24
4 more bytes>,
npm error       valid_from: 'Jun 19 09:06:02 2024 GMT',
npm error       valid_to: 'Jul 21 09:06:01 2025 GMT',
npm error       fingerprint: 'C8:28:74:DB:88:66:17:4F:5C:A5:AB:AD:F0:E1:14:74:AC:F8:FE:8F',
npm error       fingerprint256: '1F:79:7E:2E:52:1A:9D:9B:55:77:E6:DC:04:AA:1A:2B:D5:77:17:ED:E8:ED:AB:C3:F1:24:B4:CD:94:41:73:F8',
npm error       fingerprint512: '4F:0F:25:D3:0D:97:E1:AE:EF:FC:C6:E5:7E:17:46:21:9D:E1:31:23:A3:81:79:EA:49:1C:33:A9:CE:B0:03:09:45:CA:35:BD:06:B1:C3:33:52:F5:48:92:31:A2:EB:93:02:D5:7F:F8
:80:AA:1F:5B:E9:7F:D9:B6:B4:2D:A2:88',
npm error       ext_key_usage: [Array],
npm error       serialNumber: '1CD8E5CD92BA9D28AFF779CC',
npm error       raw: <Buffer 30 82 0b 30 30 82 0a 18 a0 03 02 01 02 02 0c 1c d8 e5 cd 92 ba 9d 28 af f7 79 cc 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0b 05 00 30 66 31 0b 30 09 06 03 ... 2818
more bytes>,
npm error       issuerCertificate: [Object]
npm error     }
npm error   }
npm error }
npm error A complete log of this run can be found in: C:\Users\xx\AppData\Local\npm-cache\_logs\2024-10-12T03_38_06_265Z-debug-0.log
解决办法:
  • 以管理员身份重新运行命令:

    • 打开一个具有管理员权限的终端窗口(在命令提示符或终端上右键单击并选择“以管理员身份运行”)。
    • 然后尝试再次运行 npm install -g backstopjs 命令。
  • 设置环境变量跳过下载

    • 尝试设置一个环境变量 PUPPETEER_SKIP_DOWNLOAD,值为 1,以跳过 Puppeteer 的下载过程。您可以使用以下命令设置该环境变量:
      set PUPPETEER_SKIP_DOWNLOAD=1
  • 更换 npm 源

    • 尝试更换 npm 的镜像源为默认的 npmjs.org 镜像,通过以下命令更改:
    • npm config set registry https://registry.npmjs.org/
  • 在更换源后再次运行 npm install -g backstopjs 命令。

2.创建前端项目

在项目根目录创建src文件夹,在控制台执行命令:

backstop init

 使用npm init 生成一个Package.json

接着使用backstop init命令,生成一个backstop的初始项目

3.修改配置文件

上述步骤2执行完成后,项目文件被初始化完成。生成的目录如下

(1)backstop.json文件

修改url文件

(2)新增UI对比文件

需要在backstop_data里面创建一个文件夹 backstop_reference,在这个里面放入ui 图片(用于对比UI图),要和生成的截图命名一样

安装浏览器插件命令:

npx puppeteer browsers install chrome

执行命令: backstop test

常见报错

1.报错1

已经执行过了【npx puppeteer browsers install chrome】

但是运行 backstop test还是报错如下

解决办法:

相关文章:

【backstopjs】入门安装环境

1.首先全局安装BackstopJS npm install -g backstopjs 安装失败,常见报错&解决办法&#xff1a; 报错&#xff1a; (venv) D:\workspace\Otaku\backstop>npm install -g backstopjs npm warn deprecated inflight1.0.6: This module is not supported, and leaks mem…...

LocalDate 类常用方法详解(日期时间类)

LocalDate 类常用方法详解 LocalDate 是 Java 8 引入的日期时间API中的一个类&#xff0c;用于表示不含时间和时区的日期&#xff08;年、月、日&#xff09;。以下是一些常用的 LocalDate 方法&#xff1a; 创建 LocalDate 实例 now()&#xff1a;获取当前日期 LocalDate t…...

kmp desktop实现excel预览

先将excel转paf https://blog.csdn.net/qq_42761569/article/details/121699594 package utilimport com.aspose.cells.License import com.aspose.cells.PdfSaveOptions import com.aspose.cells.Workbook import com.geolo.desktop.common.utils.LogUtils import java.io.Fi…...

OB_GINS_day3

这里写目录标题 实现当前状态初始化实现预积分的初始化由于此时preintegration_options 是3&#xff08;也就是考虑odo以及earth rotation&#xff09;为预积分的容器添加需要积分的IMU积分因子接下来是添加新的IMU到preintegration中 实现当前状态初始化 这个state_curr的主要…...

【Python3】【力扣题】405. 数字转换为十六进制数

【力扣题】题目描述&#xff1a; 题意理解&#xff1a;&#xff08;不允许使用库函数&#xff09; 数字等于0&#xff0c;则结果为0&#xff0c; 数字小于0&#xff0c;则补码运算&#xff0c;即最高位&#xff08;32位&#xff09;为1&#xff0c;其余全部取反&#xff0c;再加…...

记录一次企业外部通过ssh 连接数据库的事DBeaver

情况大概是这样&#xff0c;公司算法供应商开通了连接某个服务器A的权限&#xff0c;但是数据库x是在另一台服务器B上。 直接通过外部连接数据库是不行的&#xff0c;需要借用服务器A来进行访问x 使用软件&#xff1a;DBeaver, 数据库x类型&#xff1a;oracle 需要的信息&am…...

中聚企服:中聚AI女娲大模型,企业难题迎刃而解!

在这个瞬息万变的商业世界里&#xff0c;企业面临的挑战愈发复杂多样。小到日常文书和规章制度&#xff0c;大到工商财税和知识产权保护&#xff0c;每一个环节都至关重要。为了帮助中小企业在激烈的市场竞争中脱颖而出&#xff0c;中聚企服在官方小程序重磅上线了一款革命性产…...

对镜像精简

dive工具&#xff0c;用来优化镜像大小 ENV命令合并 ENV DEBUG_PORT8777 \HTTP_PORT12080 \PROGRAM_FILE_HOME_UPORTAL_CONF/home/zenap/uportal/confWORKDIR usr/src/app&#xff0c;会切换到这个目录 使用COPY --chown 修改属主&#xff0c;不要使用RUN chown 容器内非root…...

老电脑不能装纯净版windows

手上有一台2016年的老笔记本电脑&#xff0c;用了8年&#xff0c;基本上能换的都换了一遍&#xff0c;散热风扇换了&#xff0c;键盘换了&#xff0c;屏幕换了&#xff0c;扬声器也换了&#xff0c;内存也换大了&#xff0c;甚至都换过固态硬盘&#xff0c;但是CPU没法换&#…...

在Python中实现一个简单的社交媒体应用

在Python中实现一个简单的社交媒体应用 社交媒体应用是现代互联网的重要组成部分,允许用户分享信息、交流和互动。在这篇博文中,我们将使用Python构建一个简单的社交媒体应用,涵盖用户注册、发布动态、评论和查看动态等基本功能。我们将使用Flask框架作为后端,SQLite作为数…...

pytest高版本兼容test_data[“log“] = _handle_ansi(“\n“.join(logs))错误

一、问题现象&#xff1a; 执行seleniumpytest结束时报: INTERNALERROR> File "D:\workspace\pytestframe\.venv\Lib\site-packages\pytest_html\report_data.py", line 141, in add_test INTERNALERROR> test_data["log"] _handle_ansi(&q…...

Redis技术入门与实践指南

一、Redis基础知识 1、概念 Redis是一个开源的、遵循BSD协议的、基于内存的而且目前比较流行的键值数据库(key-value database)&#xff0c;是一个非关系型数据库&#xff0c;redis 提供将内存通过网络远程共享的一种服务&#xff0c;提供类似功能的 还有memcached&#xff0…...

如何一键完成20个Oracle实例运维脚本部署

在日常的运维工作中&#xff0c;常常是一个人需要管理维护数个数十个数据库实例&#xff0c;如果是开源类集群如mysql&#xff0c;PG等可能更多&#xff1b;在没有商业的集中管理平台的情况下&#xff0c;如何快速的部署监控或者运维脚本&#xff0c;是一个值得探讨的问题&…...

【C++刷题】力扣-#598-区间加法 II

题目描述 给你一个 m x n 的矩阵 M和一个操作数组 op 。矩阵初始化时所有的单元格都为 0 。ops[i] [ai, bi] 意味着当所有的 0 < x < ai 和 0 < y < bi 时&#xff0c; M[x][y] 应该加 1。 在 执行完所有操作后 &#xff0c;计算并返回 矩阵中最大整数的个数 。 示…...

优雅的LUA数据记录方法-serpent序列化+LUA Table

目录 简述如何集成&#xff1f;如何使用序列化 反序列化 参考 简述 项目里需要使用LUA脚本将数据记录到文件&#xff0c;要方便的增加、查找、删除&#xff0c;要方便的加载与存回。 使用序列化/反序列化 lua table可以很容易实现这些功能。 序列化将table转换为字符串 反序列…...

初始JavaEE篇——多线程(4):wait、notify,饿汉模式,懒汉模式,指令重排序

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a;JavaEE 目录 wait、notify 方法 多线程练习 单例模式 饿汉模式 懒汉模式 指令重排序 wait、notify 方法 wait 和 我们前面学习的sleep…...

Apache Solr 身份认证绕过导致任意文件读取漏洞复现(CVE-2024-45216)

0x01 产品简介 Apache Solr是一个开源的搜索平台,基于流行的Apache Lucene库构建。它提供了一个强大的全文搜索功能,能够快速处理大量数据,并支持复杂的搜索操作。并且是一个独立的企业级搜索应用服务器,它采用Java开发,并基于Apache Lucene实现。Solr提供了类似于Web-Se…...

C#整合Ollama实现本地LLMs调用

前言 近两年AIGC发展的非常迅速&#xff0c;从刚开始的只有ChatGPT到现在的很百家争鸣。从开始的大参数模型&#xff0c;再到后来的小参数模型&#xff0c;从一开始单一的文本模型到现在的多模态模型等等。随着一起进步的不仅仅是模型的多样化&#xff0c;还有模型的使用方式。…...

C++基于opencv的视频质量检测--图像抖动检测

文章目录 0.引言1. 原始代码分析2. 优化方案3. 优化后的代码4. 代码详细解读 0.引言 视频质量图像抖动检测已在C基于opencv4的视频质量检测中有所介绍&#xff0c;本文将详细介绍其优化版本。 1. 原始代码分析 首先&#xff0c;我们来看图像抖动检测的原始代码&#xff1a; …...

Cuda By Example - 11 (Texture Memory 2-D)

跟1D一样&#xff0c;2D的代码也没有运行过。旧的方法看看就好。 声明二维Texture texture<float, 2> texConstSrc; texture<float, 2> texIn; texture<float, 2> texOut; 访问二维Texture 使用2D的Texture的便利性体现在blend_kernel函数里。不再需要通…...

如何通过智能包装系统提升全链条的数字化与协同效率?

本段聚焦全链条数字化升级的核心路径&#xff0c;通过 智能包装系统实现 原材料到成品的数据共享与流程对齐。以原材料入库、生产、成品出库为主线&#xff0c;建立统一的数据模型、模块化接口与可追溯闭环&#xff0c;推动 协同优化与成本控制。结合 中科天工智能包装设备与 中…...

Android BroadcastReceiver 深度解析:原理、实践与面试指南

引言 在 Android 开发中,BroadcastReceiver 是一个核心组件,用于处理系统级事件或应用内通信。它允许应用程序响应来自系统或其他应用的广播消息,如设备开机、网络状态变化或自定义事件。BroadcastReceiver 基于事件驱动的模型,帮助开发者实现松耦合的架构,提升应用的响应…...

超导量子比特控制技术:DRAG与神经网络优化

1. 超导量子比特控制技术概述在超导量子计算系统中&#xff0c;精确的量子态操控是实现高保真度量子门操作的基础。传统微波脉冲控制面临两大核心挑战&#xff1a;非绝热跃迁导致的能级泄漏和频率失谐引起的操作误差。DRAG&#xff08;Derivative Removal by Adiabatic Gate&am…...

HCK代码实现原理:揭秘AI辅助学术分析的核心算法

HCK代码实现原理&#xff1a;揭秘AI辅助学术分析的核心算法 【免费下载链接】sala-do-futuro-script O HCK um script de anlise acadmica assistida por IA, projetado para auxiliar estudantes na resoluo de questes de tarefas e provas da plataforma sala do futuro. …...

告别臃肿PDF!用Ghostscript命令行批量压缩/拆分/合并的保姆级教程

Ghostscript实战指南&#xff1a;PDF批量处理的高效命令行艺术 每次面对动辄上百兆的扫描版PDF报告时&#xff0c;你是否也经历过邮箱附件发送失败、云盘上传卡在99%的崩溃瞬间&#xff1f;当领导临时要求合并二十份季度报表&#xff0c;或是学术期刊需要按章节拆分投稿时&…...

STM32驱动PS2手柄控制智能小车实战(避坑指南+遥控代码解析)

STM32驱动PS2手柄控制智能小车实战&#xff08;避坑指南遥控代码解析&#xff09; 在创客社区和嵌入式开发领域&#xff0c;智能小车一直是验证硬件控制逻辑的理想平台。而将游戏手柄作为控制终端&#xff0c;不仅能让项目更具趣味性&#xff0c;还能深入理解工业级输入设备与嵌…...

别再自己写CNN了!用TensorFlow 2.3和MobileNetV2,15分钟搞定水果识别模型(附完整代码)

15分钟构建高精度水果识别模型&#xff1a;基于TensorFlow 2.3与MobileNetV2的迁移学习实战 在计算机视觉领域&#xff0c;图像分类任务往往需要复杂的模型架构和大量训练数据。但对于大多数实际应用场景&#xff08;如智能零售、农业分拣或家庭健康管理&#xff09;&#xff0…...

硬核实战:调用Gemini多模态管道,直击办公中的图表解析、发票识别与自动化脚本生成(国内镜像免费方案)

办公室里的信息并不全以纯文本存在——扫描版合同、财报截图、会议白板照片、纸质发票&#xff0c;这些“非结构化视觉数据”才是拖慢效率的元凶。Gemini 的多模态能力可以同时理解图片和文字&#xff0c;直接从中提取数据、输出分析或生成脚本。目前国内用户可通过聚合镜像站 …...

【Perplexity文学研究黄金配置】:1个提示词模板+2个权威元数据过滤器+4类文学体裁专属指令集

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;Perplexity文学作品查询 Perplexity 是一款以实时网络检索与引用溯源为特色的 AI 助手&#xff0c;其在人文领域尤其适用于文学研究场景。不同于传统大模型的静态知识库&#xff0c;Perplexity 在响应用户查询…...

减 10 斤 vs 瘦 10 斤,别再被体重秤骗了!

外行看体重&#xff0c;内行看体脂。 减重 10 斤&#xff0c;你掉的可能只是水分、肌肉、肠道废物&#xff0c;身材看着没变化。 瘦 10 斤&#xff08;减脂&#xff09;&#xff0c;才是真正减掉脂肪组织&#xff0c;身材会明显小一圈&#xff0c;腰围、腿围肉眼可见地缩小。 这…...