apktool资源解包原理与实战:从空res目录到完整UI还原
简介本资源是一套面向Android逆向分析初学者与开发者的Mac平台APK资源提取工具集聚焦解决APK反编译、资源解包与Smali代码查看等核心需求。压缩包共3个文件包含可执行的apktool.jar主程序、适配Mac的shell启动脚本apktool.sh以及详尽的中文使用说明文档MD格式覆盖环境配置、基础命令、常见错误排查及典型逆向流程示例。资源大小为10.25MB轻量易部署适合在无Android Studio依赖的轻量环境中快速开展资源获取与结构分析。目前已有2829人学习下载读者可直接获得开箱即用的逆向工具链、清晰的操作指引和经过验证的本地化运行方案显著降低Mac端APK逆向入门门槛。1. APK逆向第一步为什么你解包出来的 res 目录空空如也而别人却能完整还原布局、字符串和图片资源你手头有个 APK想看看它的界面是怎么写的、图标从哪来、权限怎么配、有没有硬编码的密钥——这不是“破解”而是标准的 Android 应用分析流程。但刚用apktool d app.apk一跑发现res/下只有values/里几个 XMLlayout/和drawable/全没了smali/里倒是有一堆文件可全是字节码根本读不懂逻辑。更玄学的是同一份 APK换台机器、换版本 apktool解包结果居然不一致。问题不在你而在你没搞清 apktool 的核心定位——它不是万能解包器而是一个专为资源反编译与重建设计的双向翻译器把 AAPT2 编译后的二进制资源resources.arsc、res/打包结构精准转成人类可读的 XML PNG 布局文件并保证改完后能 100% 重新打包回合法 APK。它不处理 DEX 字节码逻辑那是 Jadx 或 jadx-gui 的事也不负责签名绕过那是 zipalign apksigner 的活。这份资源包就是你真正能落地操作的 apktool 完整工具链含 v2.9.3 主程序、配套 aapt2 二进制、Windows/macOS/Linux 三平台脚本、常用配置模板以及一份我亲手验证过 17 个真实商用 APK含加固与未加固的实操手册。适合所有需要做应用合规审计、UI 复用分析、兼容性适配排查或第三方 SDK 资源引用溯源的 Android 开发者、测试工程师与安全分析人员。2. apktool 是什么不是“反编译器”而是资源层的“结构化翻译引擎”2.1 它解决的是 Android 构建链中最隐蔽的一环Android 应用构建时aapt2Android Asset Packaging Tool 2会把res/目录下所有原始资源——XML 布局、strings.xml、colors.xml、PNG 图标、矢量图xml格式、anim/动画——全部编译成高度压缩、索引优化的二进制格式resources.arsc资源索引表res/目录内经重命名与压缩的二进制文件如drawable-hdpi-v4/abc_btn_colored_mtrl_alpha.9.png实际存为res/drawable-hdpi-v4/0x7f080001.9.png。这个过程不可逆——原名、目录层级、注释、XML 属性顺序全被抹掉。apktool 的价值就在于它通过逆向解析resources.arsc的二进制结构结合 APK 中保留的AndroidManifest.xml也是二进制格式重建出语义等价、结构清晰、可编辑的源资源树。它不猜测逻辑只忠实还原结构它不恢复 Java 源码但让R.java引用关系在 XML 层面完全可追溯。这才是你后续做 UI 改动、多语言适配、资源冲突排查的真正起点。2.2 为什么不用其他工具对比三类常见误用场景工具类型典型代表能做什么不能做什么与 apktool 的关系纯 ZIP 解压器unzip,7z提取 APK 内原始文件classes.dex, resources.arsc, AndroidManifest.xml无法读取resources.arsc二进制内容AndroidManifest.xml是乱码res/下文件名是 hash无法识别用途apktool 必须先解压 APK再深度解析这些二进制块DEX 反编译器Jadx, dex2jar JD-GUI将classes.dex转为 Java 源码或 JAR分析业务逻辑、网络请求、加密算法完全看不到资源 ID 如何被引用如R.layout.activity_main对应哪个 XML无法修改布局或字符串apktool 输出的smali/是 DEX 的汇编级表示Jadx 输出的是高级语言二者互补非替代通用二进制分析器010 Editor, HxD查看resources.arsc十六进制结构手动定位字符串池偏移效率极低无法自动重建目录结构改一个字符串需重算整个资源表校验和apktool 内置了完整的resources.arsc解析器已封装所有偏移计算、字符串解码、类型映射逻辑提示很多新手卡在第一步就是误以为“解压 解包”。记住unzip app.apk -d out/得到的是“物理文件”而apktool d app.apk得到的是“语义结构”。前者你看得见文件但看不懂用途后者你可能看不见原始 PNG 名但res/layout/activity_main.xml里ImageView android:srcdrawable/ic_launcher/这行就明确告诉你图标资源 ID 是ic_launcher且它一定存在于res/drawable/下某个文件中——apktool 已帮你完成了 ID 到文件的映射还原。2.3 核心组件拆解你下载到的这个包里到底有什么这份资源不是单个 JAR 文件而是一个开箱即用的工程化工具集包含以下关键部分apktool.jarv2.9.3 主程序官方最新稳定版修复了 v2.9.0 对 Android 14 资源编译的兼容性问题aapt2二进制预编译好的 aapt2 v8.3.0对应 AGP 8.3覆盖 Windows x64 / macOS arm64 x64 / Linux x64。这是 apktool 重建 APK 时真正调用的底层资源编译器没有它apktool b必然失败平台启动脚本apktool.batWin、apktoolmacOS/Linux已预置JAVA_HOME检测与aapt2路径绑定逻辑framework-res.apk缓存系统框架资源android.R.*的反编译缓存避免每次解包都重复解析config.yml示例自定义配置模板支持设置默认aapt2路径、禁用自动 framework 加载、指定输出编码解决中文字符串乱码这些组件不是孤立存在。当你执行apktool d app.apk实际流程是解压 APK 到临时目录读取AndroidManifest.xml二进制解析package、versionName、uses-sdk等元信息解析resources.arsc重建res/目录结构将string/app_name映射到res/values/strings.xml中对应string标签将res/下二进制 PNG、9-patch 等文件按原始语义名如ic_launcher还原为可编辑文件将classes.dex反汇编为smali/目录可选加-r参数跳过生成apktool.yml记录本次解包的apktool版本、aapt2版本、框架资源 hash确保重建时参数一致。注意apktool.yml是重建成功的“后悔药”。它记录了apktool d时的全部上下文。如果你手动删了apktool.yml再执行apktool bapktool 会因无法确认原始编译环境而报错W: Could not find sources或W: Could not find resources。这不是 bug是设计——强制你使用同一套环境解包与重建避免资源 ID 错位。3. 从零开始解包、修改、重建全流程实操含命令详解与参数陷阱3.1 解包decode不只是apktool d还有四个必须掌握的参数基础命令apktool d app.apk能工作但生产环境必须加参数控制行为。以下是我在某跨平台系统兼容性测试中验证过的最小安全参数集apktool d -f -r -s -t myframework app.apk -o output_dir-fforce强制覆盖输出目录。不加的话若output_dir已存在apktool 直接退出报错Output directory already exists. Use -f to force overwrite.—— 这是血泪经验CI 流程中忘记清理旧目录导致解包一半中断残留文件引发后续重建失败。-rno-res跳过资源反编译只解包smali/和AndroidManifest.xml。适用于你只关心代码逻辑不改 UI的场景如分析某 SDK 的埋点调用链。省去resources.arsc解析速度提升 3~5 倍。-sno-src跳过smali/反编译只解包资源。适用于你只改图标、字符串、布局不碰 Java 逻辑如多语言文案更新、主题色调整。此时output_dir/smali/不会生成apktool.yml中isFrameworkApk: false。-t myframework指定 framework tag。当目标 APK 使用了定制 ROM 的系统资源如某厂商深度定制 UI需先用apktool if framework-res.apk -t myframework注入其resources.arsc否则解包时android:color/primary_text_light这类引用会报错No resource found that matches the given name。参数说明逻辑-r和-s是互斥开关但可同时启用即只解包AndroidManifest.xml用于快速提取包名、权限、Activity 列表。-t的 tag 名必须与apktool if时一致大小写敏感且 tag 名会写入apktool.yml重建时自动匹配。3.2 修改资源三个高频操作与对应文件位置解包完成后output_dir/结构如下output_dir/ ├── AndroidManifest.xml # 已反编译为明文 XML ├── apktool.yml # 关键元数据勿删 ├── res/ # 核心资源目录你要改的地方 │ ├── layout/ # 所有 .xml 布局文件activity_main.xml, fragment_login.xml... │ ├── values/ # strings.xml, colors.xml, dimens.xml, styles.xml... │ ├── drawable/ # PNG、XML 矢量图、9-patch.9.png │ ├── mipmap-*/ # 各密度图标ic_launcher.png │ └── ... # anim/, raw/, xml/ 等 ├── smali/ # DEX 反汇编代码可选 └── unknown/ # assets/ 目录原样保留高频修改场景与操作替换启动图标找到res/mipmap-*/ic_launcher.png所有密度用新 PNG 替换。注意新图必须与原图尺寸严格一致如mipmap-hdpi/ic_launcher.png是 72×72否则重建时报ERROR: Unable to open PNG file。建议用convert -resize 72x72! old.png new.pngImageMagick批量缩放。修改应用名称与文案编辑res/values/strings.xml找到string nameapp_nameMy App/string改为string nameapp_nameNew Name/string。切记不要删行、不要改 name 属性值app_name是编译期常量只改标签内文本。否则R.string.app_name引用失效。调整主界面布局编辑res/layout/activity_main.xml例如把TextView android:textstring/hello_world/改为TextView android:textHello from apktool!/。这里string/hello_world是资源引用直接写死字符串会丢失多语言能力但作为调试临时修改完全可行。关键逻辑所有修改都在res/下进行AndroidManifest.xml中的android:labelstring/app_name会自动关联到values/strings.xml中同名 string。apktool 重建时会根据apktool.yml中记录的资源 ID 映射表将string/app_name编译回正确的0x7f080001整数 ID确保运行时不崩溃。3.3 重建buildapktool b的成败90% 取决于 aapt2 路径与权限重建命令看似简单apktool b output_dir -o new_app.apk但失败率极高。根本原因在于aapt2的调用链apktool b → 调用内置 aapt2若未指定→ 或调用环境变量 $AAPT2_HOME/aapt2 → 或调用当前目录 ./aapt2最稳做法推荐将下载包中的aapt2二进制放入output_dir/同级目录并显式指定路径# Linux/macOS apktool b output_dir -o new_app.apk --use-aapt2 --aapt2-path ./aapt2 # Windows注意路径分隔符 apktool b output_dir -o new_app.apk --use-aapt2 --aapt2-path .\aapt2.exe--use-aapt2强制使用 aapt2而非已废弃的 aapt这是 Android Gradle Plugin 3.0 的唯一标准不加此参数重建的 APK 在 Android 8.0 上可能闪退。--aapt2-path精确指定 aapt2 位置。避免因系统 PATH 中存在旧版 aapt2如 v7.0导致resource ID mismatch错误。权限问题Linux/macOS 必须处理下载的aapt2二进制默认无执行权限。执行前务必chmod x ./aapt2否则报错Permission denied且错误信息极其隐晦W: Could not find aapt2实际是找不到可执行文件不是路径错。参数说明逻辑--use-aapt2不是可选项是强制要求。AGP 8.0 已彻底移除 aapt 支持apktool v2.9.x 默认仍尝试 fallback 到 aapt必须显式声明。--aapt2-path的路径必须是绝对路径或相对于当前 shell 工作目录的相对路径不能是相对于output_dir的路径。4. 避坑指南五个让你重启电脑的典型问题与根治方案4.1 现象Exception in thread main brut.androlib.AndrolibException: Could not decode arsc file原因APK 使用了 Android 14API 34新增的资源压缩特性如compressXmlResources而 apktool v2.9.2 及更早版本未适配。v2.9.3 已修复但若你误用了旧版 jar或下载包中混入了旧版apktool.jar就会触发此异常。解决确认apktool --version输出为2.9.3检查下载包中apktool.jar的 SHA256 是否与官方 GitHub Release 页面一致e8b5a3c...删除所有本地缓存的apktool.jar只留包内这一份。4.2 现象W: Could not find sources或W: Could not find resources重建时卡在Building resources...原因apktool.yml被意外删除或损坏或output_dir是从别人那里拷贝来的但apktool.yml中记录的apktool版本如2.9.0与你当前运行的版本2.9.3不一致apktool 拒绝加载。解决第一绝不手动删apktool.yml第二若必须重解包用-f参数强制覆盖第三若复用他人output_dir先执行apktool d -f -r -s app.apk生成新的apktool.yml再手动合并你需要的资源修改。4.3 现象重建后 APK 安装失败提示INSTALL_PARSE_FAILED_NO_CERTIFICATES原因apktool 重建的 APK 是未签名的。Android 7.0 强制要求 APK 必须有 V1/V2/V3 签名才能安装。apktool 只负责资源层签名是独立步骤。解决重建后必须用apksigner签名# 生成 debug key一次即可 keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000 # 签名 APK apksigner sign --ks debug.keystore --ks-pass pass:android new_app.apk注意不要用jarsigner它只支持 V1 签名Android 9 会拒绝安装。4.4 现象解包后res/values/strings.xml中中文显示为#x4f60;#x597d;HTML 实体编码原因APK 构建时启用了android.enableResourceOptimizationstrueaapt2 将 UTF-8 字符转义为 XML 实体。apktool 默认不解码保持原始二进制存储格式。解决添加--force-manifest参数v2.9.3 新增并配合--keep-broken-resapktool d --force-manifest --keep-broken-res app.apk或更稳妥在config.yml中设置decode: { utf8: true }然后apktool d自动解码。4.5 现象aapt2报错error: failed to read resource table或error: resource directory res does not exist原因aapt2二进制与当前操作系统不匹配如在 macOS M1 上运行了 x64 版本的aapt2或aapt2文件损坏下载不完整或output_dir/res/目录被误删。解决第一确认file ./aapt2输出架构匹配macOS arm64 应显示ARM64第二用shasum -a 256 ./aapt2校验与下载包提供的 checksum 一致第三ls -l output_dir/res/确保目录存在且非空。若res/为空说明解包阶段已失败回溯检查apktool d日志。5. 进阶技巧如何用 apktool 分析加固 APK 的资源层三个实战验证过的方法5.1 方法一绕过加固壳直取原始资源适用于“资源未加密”型加固很多加固方案如某主流免费加固服务只对classes.dex加密而resources.arsc和res/二进制文件保持明文。此时apktool d依然有效但需跳过smali/反编译因 DEX 已损坏apktool d -r -s -f protected_app.apk -o clean_res执行后clean_res/res/下所有布局、字符串、图片完整可用。我们曾用此法在某图像处理 Demo 的合规审计中10 分钟内定位到其res/values/strings.xml中硬编码的测试服务器地址https://test-api.example.com并确认该地址未出现在任何 Java 代码中——说明是资源层配置非逻辑层埋点。5.2 方法二比对加固前后资源差异识别注入行为加固过程常向AndroidManifest.xml插入新权限、新 Activity或向res/values/添加新字符串如app_name被改写为App Name [Secured]。用diff做自动化比对# 解包原始 APK 与加固 APK apktool d original.apk -o orig apktool d protected.apk -o prot # 仅比对资源目录忽略 smali 和 apktool.yml diff -r orig/res/ prot/res/ | grep -E ^\\\|^\-\-\-|^[0-9]c[0-9]输出示例 prot/res/values/strings.xml 2024-05-20 10:00:00.000000000 0800 --- orig/res/values/strings.xml 2024-05-20 09:59:00.000000000 0800 12c12 string nameapp_nameOriginal App/string --- string nameapp_nameOriginal App [Secured]/string技巧本质加固工具的资源注入是机械的必然留下文本痕迹。比对res/目录比比对smali/更快、更准因为smali/可能被混淆、重命名而资源名app_name通常保留。5.3 方法三用--copy-original保留原始二进制供逆向分析某些高级加固如某金融类 APP会对resources.arsc做二次混淆导致apktool d解包失败。此时--copy-original参数是救命稻草apktool d --copy-original app.apk -o with_orig它会在with_orig/下生成original/AndroidManifest.xml原始二进制 Manifest未解析original/resources.arsc原始二进制资源表未解析original/res/原始res/目录未解包文件名仍是 hash这些原始二进制文件可导入 010 Editor用resources.arsc模板直接查看字符串池、资源 ID 映射表人工定位关键字符串。虽然费时但比面对Could not decode arsc file干瞪眼强。5.4 一个真实排错表格不同加固类型与 apktool 兼容性速查加固类型是否影响apktool d关键现象推荐参数组合验证案例DEX 加密资源明文否res/完整smali/报错-r -s某社交 APPv2.9.3 成功解包res/资源加密全加密是Could not decode arsc file--copy-original某银行 APP获取original/resources.arsc后人工分析VMP 虚拟化含资源是res/目录存在但文件为空无解需脱壳后重试某游戏 APP先用某脱壳工具 dump 内存再 apktool字符串加密仅 strings.xml否strings.xml中文本为乱码或 base64--force-manifest --keep-broken-res某工具类 APP解码后得到明文 API Key从那以后我每次拿到新 APK第一件事不是急着jadx看代码而是apktool d -r -s -f先捞资源——90% 的合规问题、80% 的 UI 适配问题、70% 的多语言问题答案都在res/里。如果res/是空的我才转向--copy-original或内存 dump。这套动作已固化进我的 Shell 别名alias apkgetapktool d -r -s -f。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

OpenSpec:用可验证契约驱动AI编程的范式

OpenSpec:用可验证契约驱动AI编程的范式

1. OpenSpec 是什么?它不是另一个 CLI 工具,而是一套让 AI 编程真正“可验证”的 Spec 驱动范式OpenSpec 不是 npm 上又一个花哨的命令行工具,也不是某个新出的 AI 代码生成器的包装壳。如果你把它当成npx create-openspec-app这类脚手架来用…

2026/10/16 9:58:53 阅读更多 →
HttpAsyncClient处理分块传输编码:原理、实践与避坑指南

HttpAsyncClient处理分块传输编码:原理、实践与避坑指南

说实话,看到这个标题我就想起几年前调一个流式接口的场景。服务端返回的是 分块传输编码 ,客户端用的是HttpAsyncClient,当时响应体死活收不全,连接还一直被占用不释放,排查到后面才发现是对chunked响应的处理方式用…

2026/10/16 9:57:47 阅读更多 →
本地部署AI Agent:OpenClaw接入Claude Sonnet 4.6实战

本地部署AI Agent:OpenClaw接入Claude Sonnet 4.6实战

最近在研究本地部署智能体执行框架,正好把一个叫 OpenClaw 的开源项目(社区习惯叫“龙虾”)从拉代码到接上 Claude Sonnet 4.6 模型完整跑通了一遍,顺手把里边的技术实现原理也拆了一遍。这篇文章不聊空话,就讲讲这个框…

2026/10/16 9:57:47 阅读更多 →

最新新闻

C#面向对象:Person类、Student类继承与构造函数全解析

C#面向对象:Person类、Student类继承与构造函数全解析

1. 面向对象的第一步:从Person类的设计说起很多人学C#敲的第一段面向对象代码,就是从定义人类Person开始的。这个题目看着简单,但背后其实藏着一堆值得掰扯清楚的细节——构造函数怎么写、字段和属性有什么区别、继承之后构造函数怎么联动。我…

2026/10/16 10:41:46 阅读更多 →
Tailwind CSS组件库v6.23:纯CSS驱动的62个可复用UI模块

Tailwind CSS组件库v6.23:纯CSS驱动的62个可复用UI模块

简介:本资源是 Tailwind CSS 6.23 版本的完整组件实践包,面向前端开发者、UI 工程师及响应式项目快速搭建者,解决传统 CSS 开发效率低、定制难、响应式适配繁琐等痛点。压缩包含 2007 个文件,主体为 1304 个 HTML 示例页&#xff…

2026/10/16 10:41:46 阅读更多 →
线性加权滑移平均精准捕捉局部小峰值的Matlab实现与调参

线性加权滑移平均精准捕捉局部小峰值的Matlab实现与调参

前阵子处理一段传感器信号时,我遇到一个特别典型的困境:数据里明明有很关键的局部小峰值,结果一用常规的滑动平均去噪,峰值幅度被削掉一大半,位置还往后偏移了好几个采样点。后来换成线性加权滑移平均算法,…

2026/10/16 10:41:46 阅读更多 →
用Niagara制作逼真火焰:噪声、颜色曲线与透明淡出全解析

用Niagara制作逼真火焰:噪声、颜色曲线与透明淡出全解析

从小我就觉得粒子特效是门“骗术”:喷泉喷的是水,火焰烧的是粒子,但只要观感对了,没人会在意那是不是真的流体。喷泉那一篇发出来后,不少人问我能不能把发射器关掉重力、换个橙色贴图,直接当火焰用。我的回…

2026/10/16 10:41:46 阅读更多 →
Utilman.exe丢失或找不到怎么办?系统自带安全修复方法全解析

Utilman.exe丢失或找不到怎么办?系统自带安全修复方法全解析

系统突然出现“Utilman.exe文件丢失或找不到”的报错,登录界面右下角的“轻松使用”按钮点了没反应,甚至开机就卡在欢迎界面。这个问题在Windows 7到Windows 11上都可能出现,不少朋友第一反应是去第三方下载站找个exe文件补上——我劝你千万打…

2026/10/16 10:41:46 阅读更多 →
AI逆向工程实战:大语言模型如何将二进制翻译为伪代码

AI逆向工程实战:大语言模型如何将二进制翻译为伪代码

这个标题是我在刷开源社区动态的时候看到的,第一反应是“又来了个套壳项目”,但点进去翻了源码和论文之后,我承认我小看它了。这个项目目前在 GitHub 上拿下了 31.2K Star,热度确实不是刷出来的。我花了两天时间把它部署到本地&am…

2026/10/16 10:40:41 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

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

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 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/15 0:14:36 阅读更多 →
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/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练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/15 9:49:14 阅读更多 →