Oracle 11.2.0.4补丁安装与回滚实战:以p27734982为例
简介这是一份专为 Linux x86-64 环境设计的补丁资源包本质属于补丁工具用于在已安装 p13390677_112040 补丁的基础上做增量增强或缺陷修复面向系统管理员、数据库运维与自动化脚本编写人员。压缩包共 1181 个文件大小约 134.21MB文件类型以 o 目标文件、xml 元数据、sql 脚本、class/plb 程序模块为主并包含大量 msg、so、jar、pm 等辅助组件其中 PatchSearch.xml 专门记录补丁目标、更新逻辑与依赖关系27734982 则是对应补丁实体文件包体结构清晰便于定位核心更新内容。目前已有 7238 人浏览学习说明该场景在运维人群中关注度较高。通过学习包内 XML 元数据与补丁文件结构读者可以理解补丁的标识规则、应用到既有环境的验证流程、回检方法以及兼容性注意事项适合在测试环境先行验证后再推送至生产库的排错场景是一份可参考的补丁管理实战材料。1. p27734982_112040_Linux-x86-64.zip 到底是什么包看到 p27734982_112040_Linux-x86-64.zip 这种文件名第一反应容易当成乱码但这类命名在数据库运维里很常见p 开头是补丁编号112040 对应 11.2.0.4.0 版本Linux-x86-64 是运行平台。它解决的问题是数据库运行到中后期暴露出来的安全漏洞和稳定性缺陷官方把一批修复打成单个 zip让运维人员在停机窗口里一次性应用避免逐个打补丁带来的冲突和多次重启。这套包适合正在维护 11.2.0.4 生产库、准备过安全审计、或者已经被某些诡异报错折磨过的 DBA 和运维工程师。这类补丁包安装并不复杂但每一步都有讲究。安装前要校验文件完整性、核对 OPatch 工具版本、做冲突检测和备份安装时要把二进制补丁和 SQL 脚本分开处理顺序不能乱安装后还要验证补丁真的进了字典想反悔时也得按正确顺序回滚。下面按实际操作顺序展开包含我在多个环境里验证过的命令和参数。2. 装补丁前先做三件事校验文件、核对 OPatch、检测冲突2.1 解压前先验证 zip 完整性别等 apply 报错才回头从任何渠道拿到的补丁包第一步都应该是校验文件完整性。网络传输导致 zip 损坏的情况比想象中频繁如果跳过这步直接解压后面 opatch apply 失败时很难判断是文件问题还是环境问题。# 进入补丁包存放目录先算 MD5 再测试压缩包结构 cd /u01/patch md5sum p27734982_112040_Linux-x86-64.zip unzip -t p27734982_112040_Linux-x86-64.zip | tail -5md5sum 计算出的值需要和补丁发布方提供的校验值比对对不上就重新下载不要抱着侥幸心理继续操作。unzip 的 -t 参数只测试压缩包完整性不实际解压输出结尾出现 no errors 相关字样才说明压缩结构没问题。这一步通常耗时十几秒但能省掉后续一小时的排查时间。确认文件没问题后再解压我一般会指定一个带补丁号的目录方便后面归档和回滚时查找unzip -q p27734982_112040_Linux-x86-64.zip -d /u01/patch/27734982-q 是安静模式避免文件列表刷屏-d 指定解压目标目录。解压目录所在文件系统至少留出 zip 体积一倍以上的可用空间因为 apply 过程中会生成日志和临时文件空间不足导致中途失败是很常见的翻车现场。解压后先 ls 看一下目录结构确认里面确实有补丁描述文件和可执行脚本而不是一个空壳目录。2.2 核对 OPatch 版本旧工具解析不了新补丁补丁包本身只包含修复内容真正把补丁写进数据库软件目录的是 OPatch 工具。这个工具随数据库安装但它也在不断更新新补丁里带的元数据格式可能比当前 OPatch 版本更先进工具太旧就会直接拒绝执行。11.2.0.4 的补丁说明文档里通常会写明最低 OPatch 版本要求常见门槛在 11.2.0.3 以上我一般会直接升到当时的最新版省得来回折腾。# 查看当前 OPatch 版本 $ORACLE_HOME/OPatch/opatch version # 查看环境里已经装了哪些补丁 $ORACLE_HOME/OPatch/opatch lsinventoryopatch version 输出简洁一行就能看到版本号。如果版本低于补丁要求需要单独下载对应版本的 OPatch 升级包把整个 OPatch 目录替换到 $ORACLE_HOME 下。替换之前先备份原目录命令是 mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch.bak再解压新版本进去最后重新执行 opatch version 确认。opatch lsinventory 会列出当前 ORACLE_HOME 下所有已安装补丁的编号和描述这个清单在冲突检测阶段要用。如果环境里之前打过临时补丁这里会显示出来如果输出里已经是空白一片反而要注意是不是环境变量没指对。运行 lsinventory 前先确认 $ORACLE_HOME 指向正确很多人在这步把环境变量指向了别的数据库目录导致后面全部操作打在了错误的实例上。提示OPatch 的所有操作都要用安装数据库的操作系统用户执行不要用 root。用 root 跑 opatch 容易把文件属主搞乱之后数据库启动会报权限类错误。2.3 冲突检测和备份把后悔药提前备好补丁不是想打就能打。如果环境里已经存在某个临时补丁修复点和这个新补丁重叠直接 apply 会报冲突。提前做一次冲突检测能避免 apply 跑到一半才告诉你不行的尴尬场面。cd /u01/patch/27734982 $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./-ph 参数指向补丁所在目录工具会读取补丁元数据和当前 ORACLE_HOME 里已有的补丁逐一比对。输出里出现 All checks passed 才表示没有冲突如果列出 conflict 字样后面会跟着冲突的补丁编号和原因。遇到冲突不要硬打先把老补丁回滚掉或者联系补丁支持方确认是否需要先装某个前置补丁。备份这一步容易被跳过但它是整个安装过程里最重要的后悔药。二进制补丁会直接替换 $ORACLE_HOME 下的可执行文件和动态库虽然 OPatch 自身会做备份但只保留在软件目录里一旦回滚脚本出问题会很被动。我一般会在 apply 前单独打包 bin 和 lib 两个目录cd $ORACLE_HOME tar -czf /u01/backup/oh_bin_lib_before_27734982.tar.gz bin lib这个备份只覆盖补丁可能替换的核心目录几分钟就能完成。如果你的环境是虚拟机直接对 ORACLE_HOME 所在文件系统打快照是最省事的方案回滚时秒级恢复。别再纠结要不要备份凡是没备份就敢在生产库上跑 opatch 的人或多或少都经历过半夜回滚的折磨。3. 正式应用补丁二进制和 SQL 脚本两条线都要走3.1 关闭实例后执行 opatch apply关键参数一次说清补丁安装分两个阶段二进制替换阶段和 SQL 脚本阶段。二进制替换先执行它负责把可执行文件、动态链接库替换成补丁后的版本SQL 脚本后执行负责更新数据库数据字典。两个阶段都必须完成补丁才算真正生效。先关闭数据库实例。单机环境直接在 SQL*Plus 里 shutdown集群环境用 srvctl 停止实例。关闭前检查一下有没有长时间运行的事务避免强制关库带来恢复开销。sqlplus / as sysdba SQL shutdown immediate; SQL exitshutdown immediate 会等待当前事务结束并回滚未提交事务正常生产库在几秒到几十秒内完成。如果实例是集群的一部分用 srvctl stop instance -d 数据库名 -i 实例名 更规范直接 kill 进程的方式尽量别用除非数据库已经处于异常状态。实例关闭后执行二进制补丁应用cd /u01/patch/27734982 $ORACLE_HOME/OPatch/opatch apply -oh $ORACLE_HOME -ph ./-oh 参数显式指定 ORACLE_HOME防止环境变量污染导致打错目录-ph 指向补丁目录。apply 过程会先做一次预检查确认之前的冲突检测通过、磁盘空间足够、文件权限正确然后才开始替换文件。整个过程中 OPatch 会在 $ORACLE_HOME/cfgtoollogs/opatch/ 下写日志文件名带日期apply 卡住或失败时先翻这个日志。执行成功后输出会显示 apply complete 或类似提示同时会提示下一步需要执行 SQL 脚本。这一步不能并发操作同一个 ORACLE_HOME 同时只能有一个 OPatch 进程在跑所以如果其他同事正在维护这个环境的其他组件先协调好窗口。3.2 startup upgrade 模式跑 catbundle.sql字典才算更新二进制替换完成只是第一步。数据库数据字典还停留在旧版本直接启动数据库跑业务会出问题。需要以升级模式启动执行补丁自带的 SQL 脚本来同步字典。这一步的原理是补丁涉及的新功能、新元数据对象都必须写进数据字典而普通启动模式不允许这类字典修改操作upgrade 模式专门为此开放了权限。sqlplus / as sysdba SQL startup upgrade; SQL ?/rdbms/admin/catbundle.sql psu SQL ?/rdbms/admin/utlrp.sqlstartup upgrade 告诉数据库以维护模式启动跳过部分正常启动检查同时允许对数据字典做修改。catbundle.sql 是补丁 SQL 脚本的统一入口psu 参数指定应用的是 PSU 类型补丁如果补丁类型是 CPU则换成 cpu 参数。脚本执行时间取决于数据库版本和对象数量通常在几分钟到半小时之间期间不要中断会话也不要新开窗口执行其他字典操作。utlrp.sql 负责重编译所有失效对象。二进制文件替换后部分 PL/SQL 包和视图会变成 invalid 状态这个脚本会逐个重新编译。执行完 utlrp.sql 后查询无效对象数量应该明显下降。退出 SQL*Plus 前再执行一次 shutdown immediate然后 startup 正常启动确认实例能顺利打开。SQL shutdown immediate; SQL startup; SQL exit正常启动后用业务账号跑几个基础操作验证功能没有异常比如简单的增删改查和一条带复杂 JOIN 的查询。这一步是快速试水不需要全量回归但至少确认数据库服务可用。注意catbundle.sql 必须用 sys 用户执行普通账号即使有 DBA 权限也可能因为字典操作受限而报错。执行前确认当前登录用户确实是 sys别用了一个名字像 sys 的普通账号。3.3 OJVM 这类独立补丁包为什么经常要单独处理很多 11.2.0.4 的补丁包只包含数据库主组件JVM 组件的修复是另一个独立的补丁包命名上也会有单独的补丁号。判断这个 zip 里有没有包含 OJVM 的方法是去看补丁目录里的说明文档里面会明确写了包含哪些组件以及是否需要单独下载 OJVM 补丁。如果环境里用了数据库的 Java 存储过程或者 Oracle JVM 相关功能OJVM 缺失会导致运行时出现 Java 相关的内部错误表现常常是某个 Java 存储过程第一次调用就报异常。我一般会在同一个停机窗口把主补丁和 OJVM 补丁一起打因为 OJVM 同样需要重启实例拆成两次意味着生产库要经历两次短期不可用代价不划算。打 OJVM 补丁的流程和主补丁基本一样先 opatch apply 它的补丁目录再在 upgrade 模式下执行对应 SQL 脚本。如果同一个窗口打两个补丁顺序是先主补丁后 OJVM两个二进制补丁都 apply 完再统一执行 SQL 脚本这样只重启一次就够了。这个顺序在补丁说明文档里一般也有明确要求动手前先把文档里有关安装顺序的段落读完再开工。4. 打补丁的五个常见坑现象、原因、解决4.1 OPatch 版本检查直接失败现象opatch apply 执行后几秒内就报错提示当前 OPatch 版本过低无法解析补丁包。原因补丁包里的元数据文件使用了较新的格式旧版 OPatch 解析不了工具判断无法安全执行就主动退出。这类报错在不同环境见过很多次多半是 ORACLE_HOME 里的 OPatch 从安装后就没升级过。解决单独下载对应版本的 OPatch 升级工具包备份原 OPatch 目录后整体替换再执行 opatch version 确认版本号高于补丁要求。回滚临时改动时把备份的 OPatch 目录改回来即可。这个操作不涉及数据库文件不需要重启实例替换完直接继续 apply就行。4.2 冲突检测报 conflict硬打导致意外现象opatch prereq 输出显示当前补丁与某个已安装临时补丁存在冲突继续 apply 会中断并可能破坏文件结构。原因之前为了解决某个具体问题单独打过一个 interim 补丁而这个新补丁已经包含了相同的修复点两者修改的是同一段代码。解决先记录冲突的补丁编号然后判断这个临时补丁是否已经被新补丁覆盖。如果覆盖了先用 opatch rollback 回滚掉老补丁再重新跑一次冲突检测直到 All checks passed 再开始 apply。拿不准时不要自己判断把冲突信息贴给补丁支持方确认别在冲突状态下强行安装。4.3 打完二进制忘了跑 SQL 脚本现象opatch lsinventory 显示补丁已经在列表里但运行某些功能时还是报旧行为或者报出找不到某列、某视图的错误。原因二进制文件已经替换成新版本但数据字典还停留在旧版本两者版本不一致。只跑一半的补丁比没打更麻烦因为排查时会误以为环境已经更新。解决回到 SQL*Plus以 upgrade 模式启动数据库执行 catbundle.sql psu 和 utlrp.sql完成后正常重启。这个补漏操作不需要重新 apply 二进制补丁直接执行 SQL 阶段即可。养成习惯每次 apply 完成后都把 SQL 阶段跑完再启动业务不留半截工程。4.4 回滚顺序搞反字典和二进制对不上现象先回滚了二进制补丁再回滚 SQL 脚本结果数据库启动时报内部错误或者字典版本和软件版本不匹配导致大量对象失效。原因二进制回滚把代码换回旧版本但数据字典已经被补丁 SQL 脚本改成了新版本两边不一致数据库启动时按字典版本加载对象自然出错。解决回滚顺序和安装顺序相反先回滚 SQL 脚本让字典退回去再回滚二进制补丁让软件退回去。SQL 回滚同样在 upgrade 模式下执行回滚脚本二进制回滚用 opatch rollback -id 补丁号 -ph 补丁目录。执行前先看补丁说明文档里有没有支持回滚的说明少数补丁不支持回滚只能走备份恢复路线。4.5 空间不足导致 apply 到一半中断现象apply 中途报错提示磁盘空间不足或者文件写入失败检查发现 $ORACLE_HOME 所在分区已经满了。原因OPatch 执行时会先备份被替换文件再写新文件同时还有日志增长瞬时占用空间可能达到补丁体积的数倍。很多人只检查了解压目录的空间忽略了 $ORACLE_HOME 自己的分区。解决apply 前 df -h 同时检查 $ORACLE_HOME、解压目录、/tmp 三个位置确认可用空间充足。空间不足时先清理数据库告警日志和 trace 文件再考虑扩充文件系统。不要为了省事把补丁目录放到内存盘或软链到临时位置补丁应用中断后清理起来非常麻烦。5. 验证补丁生效和回滚的实操技巧5.1 用 lsinventory 和字典视图确认两边都到位补丁打完确认生效不能只看 apply 时的成功提示要从二进制和字典两个层面各验证一次。二进制的验证看 OPatch 记录的补丁清单字典的验证看注册表历史。$ORACLE_HOME/OPatch/opatch lsinventory -oh $ORACLE_HOME | grep -B2 -A2 27734982这段命令在补丁列表里定位本次补丁编号能看到补丁 ID、描述和安装日期。如果输出里没有这条记录说明二进制阶段没真正落库需要检查 apply 日志。SQL 层面用 DBA_REGISTRY_HISTORY 视图确认SELECT TO_CHAR(ACTION_TIME, YYYY-MM-DD HH24:MI) AS action_time, ACTION, STATUS, COMMENTS FROM DBA_REGISTRY_HISTORY WHERE ACTION APPLY ORDER BY ACTION_TIME DESC;这个查询会列出数据库历史安装记录最新一条应该能看到本次补丁编号和 APPLY 状态。同时跑一下无效对象统计SELECT COUNT(*) FROM DBA_OBJECTS WHERE STATUS INVALID;5.2 想反悔时怎么干净地回滚顺序决定成败补丁上线后如果业务侧发现问题需要回滚顺序必须是先字典后二进制。先以 upgrade 模式启动数据库执行对应的回滚 SQL 脚本让数据字典退回旧版本然后关闭实例再用 opatch 回滚二进制sqlplus / as sysdba SQL startup upgrade; SQL ?/rdbms/admin/catbundle.sql rollback SQL shutdown immediate; SQL exitcd /u01/patch/27734982 $ORACLE_HOME/OPatch/opatch rollback -id 27734982 -ph ./rollback 的 -id 参数取的是补丁编号就是文件名里 p 后面那串数字不是完整文件名。回滚完成后重新执行 lsinventory 确认补丁不在列表里再看一遍无效对象数量确认没有残留异常。如果补丁说明文档里标注了不支持回滚那只能走 2.3 节备份的快照或 tar 包恢复路线这也是当初坚持做备份的原因。5.3 一个值得养成的好习惯补丁归档和变更记录每次补丁打完我会把 zip 包和对应的说明文档统一归档到一个专门的补丁仓库目录目录命名带上日期和补丁号比如 /u01/patch/archive/2025-06-30_27734982。同时把这次安装和回滚过程中遇到的所有问题、命令输出、最终结论写成一页简单的变更记录放在同一个目录下。这个习惯的价值在几个月后会体现出来。下次再打新补丁需要做冲突分析时翻一下归档就能知道这台机器上跑过哪些补丁、上次踩过什么坑不用靠记忆去拼完整时间线。补丁管理本质上是环境历史管理环境里装过什么、改过什么、为什么改全记录清楚很多看似玄学的问题其实都能从记录里找到触发点。我的习惯是补丁没归档不算完成变更没记录不算收尾。这个习惯救过我很多次希望你也能用上。本文还有配套的精品资源点击获取

相关新闻

基于机器学习的分布式系统故障诊断:特征工程与工程落地实践

基于机器学习的分布式系统故障诊断:特征工程与工程落地实践

简介:基于机器学习的分布式系统故障诊断系统完整项目源码,配套文档说明,适用于计算机、人工智能、通信工程、自动化等专业学生作为毕业设计、课程设计或初期项目演示。项目聚焦分布式环境下的异常检测与故障定位,代码已经运行验证…

2026/10/13 13:28:06 阅读更多 →
临床包装数字化选LES还是MES?流程执行与数据完整性是关键

临床包装数字化选LES还是MES?流程执行与数据完整性是关键

1. 为什么临床包装圈开始认真聊“弃MES选LES” 我最近在好几个客户现场都被问到同一个问题:“临床包装数字化到底该上MES还是LES?”其实这个问题搁在五年前,很多人的第一反应是“MES,制造执行系统,那肯定要上”。但现在…

2026/10/13 13:28:06 阅读更多 →
EPLAN高效电气设计:自建部件库与宏积累实战指南

EPLAN高效电气设计:自建部件库与宏积累实战指南

干这行超过十年之后,有人问我“EPLAN 里到底什么最重要”,我很少第一时间想到软件本身的功能清单,反而会想到自己积攒多年的那套部件库和图纸模板。最近有位同行问我:“怎么才能像老手一样画图又快又不出错?”我当时的…

2026/10/13 13:28:06 阅读更多 →

最新新闻

Three.js实现3D心形照片墙:坐标计算与性能优化

Three.js实现3D心形照片墙:坐标计算与性能优化

简介:这是一份基于HTML5与CSS3实现的“心”形3D照片墙特效源码,面向前端初学者、网页特效爱好者以及需要为个人主页或纪念页面增添视觉亮点的开发者。它解决了传统照片墙排列呆板、缺乏空间感的问题,将图片以“心”形布局悬挂于虚拟墙面&…

2026/10/13 14:16:11 阅读更多 →
五种OpenCV图像滤波对比:BoxBlur、高斯、中值、双边滤波参数与选型指南

五种OpenCV图像滤波对比:BoxBlur、高斯、中值、双边滤波参数与选型指南

第一次系统性把 BoxBlur、Blur、GaussianBlur、medianBlur、bilateralFilter 这五种滤波放到一起对比,是因为手头某图像处理 Demo 的预处理流程出了问题:输入画面的噪声构成很杂,既有全局的高斯扰动,又时不时冒出几个椒盐白点。我…

2026/10/13 14:16:11 阅读更多 →
微信抢红包功能实现:二倍均值法与Redis原子操作详解

微信抢红包功能实现:二倍均值法与Redis原子操作详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:16:11 阅读更多 →
PyTorch+MNIST云端快速验证:从环境配置到99.2%准确率

PyTorch+MNIST云端快速验证:从环境配置到99.2%准确率

1. 项目概述:为什么一个Notebook就能跑通MNIST识别?你有没有试过,打开PyTorch官网教程,复制粘贴几行代码,结果卡在环境配置上——CUDA版本不匹配、torchvision安装报错、GPU设备识别失败……最后关掉终端,默…

2026/10/13 14:16:11 阅读更多 →
SpringBoot+Vue3+MyBatis构建高效就业管理系统

SpringBoot+Vue3+MyBatis构建高效就业管理系统

1. 项目概述:就业管理系统的技术架构与核心价值这套基于SpringBootVue3MyBatis的就业管理系统,是当前企业校园招聘和人才管理的典型解决方案。我去年为某高校就业指导中心部署过类似系统,实际运行中每天要处理3000学生的就业数据。前后端分离…

2026/10/13 14:16:11 阅读更多 →
OpenGL轮廓文字渲染:可旋转矢量字形实现与优化

OpenGL轮廓文字渲染:可旋转矢量字形实现与优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:15:09 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →