IoT嵌入式测试:软硬件集成与联调实践指南
做IoT嵌入式测试这行的人大多体会过那种“硬件说软件没问题软件说硬件没问题联在一起就是有问题”的拉扯。我前段时间正好在带一个智能家居网关的测试项目功能本身不算复杂可真正把人磨疯的恰恰是IoT设备测试里最容易被低估的环节——硬件与软件集成。这个标题里的每个词都值得拆开聊“硬件”不只是MCU和传感器还有供电、信号、接口、时序“软件”也不只是应用固件还有驱动、协议栈、烧录工具和自动化脚本而“集成”才是重点它意味着我们测试的不是某一个模块而是它们咬合在一起之后表现出来的整体行为。这篇指南是我在实际项目中攒下来的整套做法从台架搭法、工具链选择到联调流程再到踩坑记录尽量一次说透。适合正在做嵌入式测试、IoT产品交付或者想从单点功能测试往软硬一体测试转型的人参考。1. 为什么IoT设备测试的难点恰恰在“集成”上1.1 硬件与软件之间的天然脱节很多团队一开始就把IoT设备测试拆成两条线硬件QA测电气特性、功耗、信号完整性软件QA测功能逻辑、协议一致性、业务流程。两条线各测各的报告各写各的界面层很少真正对齐。这带来的直接后果就是——单项测试全过一集成就崩。举一个我实际遇到的例子。某款温湿度传感器节点软件侧用模拟数据跑通了所有上报逻辑硬件侧验证了I2C总线波形完全正常。结果打样件一联调每隔几分钟就丢一包数据。查到最后是固件里I2C读取频率稍微快了一点硬件在选型时又把上拉电阻放大了一档导致总线上升沿变缓偶尔超过从机时序阈值。软件平台测不出来因为没接真机硬件平台也测不出来因为没跑真实业务。只有把两者放进同一个测试闭环里让它们用真实信号、真实数据、真实负载互相“折磨”这个问题才会显形。所以IoT设备测试里的“集成”第一个要义不是“做完软件再做硬件联调”而是从第一天起就把软硬件塞进同一个测试闭环。我见过不少项目把集成测试排到交付前最后一个月结果发现问题后连改板周期都不够只能硬着头皮带病发布。正确做法是在项目立项时就搭好集成测试环境哪怕很简陋也能让软硬件团队从早期开始对齐接口和预期行为。1.2 测试对象是一条完整链路不是一块板子IoT设备的集成测试之所以比普通嵌入式测试复杂是因为被测对象并不是一个单片机而是一条完整的数据链路传感器/执行器 → 主板IO → 主控MCU → 协议栈 → 无线模组 → 网关/云端平台。任何一环的偶发问题都可能被另一环的软件掩盖或者反过来被放大。我在设计测试方案时会把这条链路拆成五个独立观察点每个观察点都有典型的“跨层”问题观察点典型问题容易在哪个环节被掩盖物理层电源纹波导致ADC采数漂移、地弹引起误触发软件做了滤波平均掩盖了硬件噪声驱动层中断优先级配置错误导致偶发卡死高负载业务场景才出现功能测试难复现协议层半包粘包、心跳超时、重传风暴单机测试环境模拟不出弱网环境业务层状态机边界条件未覆盖信号质量好的实验室环境测不出来交互层App命令下发到设备执行之间有隐藏延迟端到端链路没打通时根本发现不了集成测试要做的就是把这些“跨层”问题提前逼出来而不是等客户现场爆发。我经常跟团队说不要在测试报告里写“该设备功能正常”而是要写清楚“在什么链路条件下、什么负载下功能正常”。这两句话的差别就是集成测试与功能测试的差别。2. 硬件准备搭建一套可复用的测试台架2.1 最小硬件组成清单先别急着上价格高昂的自动化测试机柜。对绝大多数IoT设备测试来说一套稳定、可复用的台架只需要六样东西被测设备DUT至少2台一台跑正常版本一台专门用来做异常注入隔离电源/可编程电源支持电压拉偏、限流、瞬断逻辑分析仪或示波器至少一台带宽足够覆盖目标信号USB转串口模块最好带隔离避免共地噪声干扰可调直流负载或电子负载模拟电机、加热器等大电流执行器传感器模拟器或信号发生器模拟温湿度、光照、开关量等输入这套组合里最容易被忽略的是隔离电源。很多IoT设备是电池供电或适配器浮地供电测试时外接示波器和串口会改变地回路。我见过一个项目因为示波器探头地线引入共地噪声导致本来稳定的无线通信出现随机丢包足足排查了两天才发现是测量设备干扰了被测对象。所以台架的所有仪器与被测设备之间尽量走隔离不要图省事把地线随便并到一起。2.2 信号采集与供电方案的设计要点供电设计有讲究。测量功耗时要串一个电流采样电阻或者用专门的电流探头采样电阻阻值不宜过大否则会给设备引入额外压降。我的经验是低功耗MCU场景用0.1Ω左右的采样电阻配合差分探头能同时兼顾分辨率和压降影响如果只是看大电流执行器启停普通万用表加记录功能就够用。信号采集方面逻辑分析仪的采样率至少要达到信号速率四倍以上最好八倍否则边沿判断不可靠。像I2C加上拉电阻后的边沿时间往往在几十纳秒用1GHz采样率的分析仪才能看得比较清楚。预算有限的话可以优先买一个带深存储的逻辑分析仪这比单纯追求高带宽但存储深度浅的型号更有实用价值。另外串口模块建议选择带隔离且支持硬件流控的型号。现在很多模块为了省成本只用三根线TX、RX、GND在IoT设备硬件与软件集成调试中没有CTS/RTS流控遇到固件一次性打印大量日志时会严重丢包。我吃过这个亏后来统一给测试台架配了带独立时钟芯片的串口模块虽然单价贵了几十块但排查通信问题的效率提升不是一星半点。2.3 环境模拟把“现场”搬进实验室做IoT设备测试最怕的是“在家里测都好一到现场就傻”。这句话背后的原因十有八九是现场环境没有被模拟出来。我通常会在台架上增加一个简单的环境模拟区用温箱做温度冲击尤其针对电池放电特性和无线模块频率温漂用一个电磁继电器阵列来模拟多个传感器同时通断考验固件在外部设备热插拔时的处理能力再加一路可编程的干扰电压源模拟电力线噪声或者适配器输出抖动。不需要做成完整的环境实验室但至少要覆盖设备声称的工作温度范围和供电波动范围。这里有一个相当重要的经验环境模拟一定要与软件脚本联动而不是手动“怼”一下。温度、电压、信号的改变要能被测试脚本统一记录时间戳对齐否则你只能知道“设备挂了”却不知道它是“在什么条件组合下挂的”。我遇到过一种情况设备在低温与低电压同时出现时会重启但单独测低温或单独测低电压都没问题。如果当时不是把温度和电源拉偏动作都写进了同一条自动化脚本这个问题几乎不可能定位。3. 软件工具链从固件烧录到自动化测试3.1 固件烧录与版本管理硬件与软件集成测试要可复现第一步就是固件版本可追溯。不要用“TEST_OK_v2_final.bin”这种文件名来管理固件而是应该在编译阶段就把版本号、Git短哈希和编译时间写进固件的固定偏移位置。烧录时用命令行工具做到一键烧录、一键读回校验。具体到我常用的一套组合SWD接口配合开源的OpenOCD做烧录和读取配合主流调试器厂商提供的命令行下载工具做批量版本部署。固件文件统一放到一个本地版本仓库里与项目源码分支一一对应。每次集成测试跑之前必须把被测固件版本号记录进测试报告后续定位回归问题会省很多事。一个容易忽略的细节是烧录参数要写入测试环境配置。不同批次设备的Flash加密状态、Option Byte、UID读取权限可能不一样如果烧录脚本没有把这些参数固化换一个批次就可能烧出“没有实际生效”的固件。我自己遇到过烧录时一直报成功但设备里的还是旧版本后来发现是烧录工具配置里“重置并运行”选项没勾上烧完没有退出调试模式程序一直没跑起来。3.2 日志、遥测与指令通道测试过程中你不可能一直盯着屏幕看串口输出。我建议在设计测试台架时给被测设备同时预留三条软件通道调试串口日志打印关键事件、错误码、状态机跳转呼吸式遥测设备周期性上报心跳附带运行状态和关键变量远程命令通道测试脚本能下发指令触发设备执行特定动作这三条通道用途各不相同。调试串口用于深度诊断遥测用于掌握全局状态命令通道用于控制测试流程。集成测试脚本跑起来后脚本通过命令通道触发设备进入特定模式同时通过遥测判断设备反应只有出现无法解释的异常时才通过串口日志排查细节。一个很容易踩的坑是调试日志影响了时序。越是低成本的IoT设备MCU资源越紧张如果日志打印走阻塞式UART碰上高速并发数据处理时时序会被拉偏原本能正常通过的场景也变成偶发失败。所以正式集成测试时日志通道要设置优先级甚至可以动态开关需要观察时序问题的时候优先用遥测数据和逻辑分析仪不要全指望串口日志。3.3 自动化测试框架别急着上重武器很多团队一提到自动化就想着上重量级UI自动化平台。但对IoT设备这种以协议和信号为主的被测对象重平台往往不是最优解。我更推荐在软件层面用Python的pytest作为主测试框架配合paho-mqtt或协程库操作通信协议硬件信号层面用逻辑分析仪厂商的SDK或者自研小工具去采集。选pytest的原因很朴素断言语法直观支持fixture的setup/teardown机制可以很方便地为每个用例准备“环境状态”插件生态也成熟生成测试报告、重试失败用例都很容易。真正要花精力的是设计好用例的组织结构把“设备上线”“数据上报”“命令下发”“OTA升级”这类业务动作封装成公共关键字再组合出不同场景。举个例子我会把“设备连接指定Wi-Fi并完成平台鉴权”封装成一个fixture所有需要在线状态的用例直接引用它既省代码又保证前置条件一致。注意自动化框架的稳定度决定了测试的可信度。如果框架本身频繁超时或者误报团队很快会对自动化失去信心最后回到手工测试。所以宁可先只自动化20%最核心的用例也要保证这20%跑得又快又稳。4. 软硬件联调的实施流程与关键环节4.1 从冒烟测试到全链路回归我习惯把集成测试分成四层每层都有明确的准入和准出条件避免一上来就“全量跑一遍”的无序状态。硬件冒烟上电、时钟起振、核心电压、复位引脚、串口输出10分钟内确认“这块板子活着”驱动集成Flash读写、ADC采样、GPIO翻转、I2C/SPI外设通信确认MCU能正确操控外部器件协议联调设备接入网关/云平台验证注册、鉴权、心跳、数据上报、命令下发全链路回归叠加异常注入、环境波动、长时间老化确认系统整体稳定很多团队忽略第一层冒烟觉得“板子能开机就是好的”。其实硬件与软件集成测试里第一层是把“硬件缺陷”和“软件缺陷”隔离出去的关键。如果冒烟就不通过不要急着去查应用代码先把电源、时钟、Boot引脚、Flash加密位这些硬件级问题排掉。我见过一个项目新到一批板子全部无法启动软件团队以为是BootLoader有问题查了两天结果是生产环节把某颗电容吹偏了电源芯片软启动起不来。这个锅本来应该在第一步冒烟测试就扣到供应链头上。4.2 时间同步与观测一致性集成测试最头疼的问题之一是“软件看到的现象”和“硬件捕捉的波形”对不上。比如软件日志显示设备在T时刻触发了重启但示波器上电源轨在T200ms才掉电。这时候你需要一个统一的时间基准。我目前的做法是测试主机部署一个NTP时间同步方案所有带LAN接口的仪器接入同一时间源串口日志打印时带上毫秒级时间戳同时用GPIO输出一个心跳脉冲这个脉冲同时接入逻辑分析仪和被测设备的某个备用IO脚本里以这个脉冲作为对齐锚点。这样一来软件日志、硬件波形、电源事件就能对到同一个时间轴上。说个实操细节很多仪器的时间同步字段在采集启动那一刻就定了所以采集前要让仪器先完成锁时再开始记录否则记录中途再对时会留下几百微秒的偏差。对大多数IoT场景来说几百微秒不足以直接定位问题但足够让你误判“先有鸡还是先有蛋”——到底是先掉电导致重启还是重启导致电源波动这个因果关系一旦判反排查方向就全错了。4.3 异常注入把故障当成测试用例集成测试的重头戏是异常注入。普通环境下测不出来的问题往往在断电、欠压、通信中断、存储写满这类异常场景里暴露。我维护了一份异常注入清单每次集成回归都会完整跑一遍瞬间断电0.5秒、1秒、3秒验证设备上电自检与状态恢复能力电压拉偏标称3.3V分别拉到3.0V、2.7V、3.6V观察是否出现隐蔽复位通信干扰在无线模组附近用信号发生器制造同频干扰网络闪断切断TCP/CoAP连接观察重连退避策略是否符合预期外设热插拔传感器和继电器在执行任务中断开再重新接入存储异常Flash写满、分区表异常看固件是否会陷入死循环做异常注入时一定要配合自动记录。建议脚本把每次注入的时间、类型、参数写入同一份测试数据库并把设备反应是否重启、是否上报异常、恢复时长自动关联进去。不要手动记录手动记录在长时间老化测试里基本不可靠。我记得有一次凌晨跑老化设备在3点17分发生了一次无日志的静默重启第二天如果不是靠自动记录根本不知道昨晚还有这么一次异常。5. 常见问题与排查技巧实录5.1 串口日志丢包严重表现固件用调试串口打印日志波特率115200持续打印时大量丢包偶尔设备复位打印有一段信息消失。排查步骤先看是否使能了硬件流控。如果模块不支持CTS/RTS先降波特率或者开启固件日志环形缓冲用逻辑分析仪同时抓TX引脚波形对比软件收到的字符流定位丢包发生在发送端还是接收端如果逻辑分析仪显示发送端本来就没发出基本可以断定是固件内日志缓冲区被覆盖属于软件侧问题如果发送端有波形但接收端没收到检查USB转串口模块质量、线缆长度、地线连接我自己的经验是串口丢包问题八成出在线材和模块质量上。买设备时多花几十块选一个带隔离、带独立时钟晶振的模块后面能省一整天排查时间。另外串口线不要太长超过一米就容易在高速波特率下出现误码尤其当线缆靠近电源线时干扰更明显。5.2 波形看着正常功能却偶发不对表现I2C总线通信偶发失败逻辑分析仪抓出来的波形看起来完全正确ACK位有、数据位对、时序也满足手册。但设备就是偶发读不到传感器数据。后来的原因上电时序问题。传感器在MCU初始化I2C外设之前还没完全上电稳定导致第一次通信被“半上电”状态下的假ACK欺骗。波形没毛病问题是逻辑分析仪只抓了通信阶段的波形没抓电源轨。解决方法把采集回放到上电瞬间同时抓电源轨和I2C总线看传感器供电稳定是否晚于通信发起。从那以后我养成了一个习惯凡是排查通信偶发失败先把相关芯片的电源轨一起抓到逻辑分析仪里观察上电和掉电窗口。这个习惯救了我好几次有很多通信问题根本不是通信环节本身的问题而是供电时序踩在了临界点。5.3 低功耗模式下电流异常表现设备进入低功耗模式后理论电流应该在10uA级别实测却有1mA左右。软件侧排查已经把外设、时钟都关了就是降不下去。这类问题十有八九是硬件侧的“漏电流”路径。可能是GPIO没有配置成正确状态导致内部上拉/下拉电阻还在耗电也可能是外部传感器通过IO口向MCU倒灌电流甚至可能是电源芯片的空载静态电流本身就高。排查时可以逐路断开外设供电用电流表观察每一步的电流拐点。如果软件侧看不到掉电流的动作就往硬件方向查检查每一个与外部连接的IO是否设置成输出低电平或高阻检查负载开关的关断状态是否正常。这里有个细节很多MCU的GPIO复位默认状态是输入浮空如果外部电路靠内部上拉维持电平进入低功耗前必须显式把引脚配置成确定状态否则漏电路径会一直存在。5.4 自动化脚本偶发失败人工操作却正常这是最让人头大的问题脚本跑十次有两次失败手动操作每次都成功。失败点还不是固定的有时是连接超时有时是数据校验失败。我踩过坑之后总结出三条经验脚本里的时间阈值不要拍脑袋定。要先用实测统计出正常操作的P95耗时再留20%的余量作为超时阈值而不是凭感觉填一个“应该够了吧”的秒数。填得太松会让失败用例拖半天才退出填得太紧又会导致正常操作被误杀失败用例要自动重试但重试前必须做环境复位否则第二次运行会带着上一次的脏状态。比如上一次用例没把设备恢复到待机态直接跑下一个用例失败概率会大大增加无人值守跑的用例要把每次采集到的原始数据保留下来而不是只保留断言结果。否则出现偶发失败时你根本没法回溯到底是设备真出问题还是脚本读取时机不对另外很多偶发失败是“测试台架本身引入了时序抖动”。比如脚本里同时操作多个USB串口通道系统调度会导致某个通道响应慢。这种情况下请优先考虑给不同被测设备分配独立的USB控制器或者直接用带多端口隔离的工业串口卡。别小看这个问题我见过整个自动化测试体系好不容易建起来最后因为USB Hub供电不足导致随机设备识别失败整个跑批一夜之间全是红。写到这里我又想起前阵子熬的那几个夜。每次被硬件坑完发现其实是软件被软件坑完又发现根子还是硬件。做IoT设备测试就是在这种反复横跳里练出直觉的。我个人现在最深的体会是别把“集成”当成最后阶段的事。越早让硬件、软件、测试脚本在一个台架上互相“折磨”问题暴露得就越早修复成本就越低。硬件设备还在预研时就可以先搭最小台架跑通一条烟囱链路软件框架没写完时可以先用测试桩代替。台架和工具链不是等产品稳定了才建而是从第一天就该跟着产品一起长起来。最后再分享一个小技巧所有测试台架的连接关系、仪器配置、触发条件都值得画一张简单的接线图放进测试用例文档里。三个月后你和同事再回头处理回归问题会发现这张图比一整段操作说明都要管用。测试环境也是一种代码资产轻视它的人迟早会被它反咬一口。

相关新闻

手写可定制搜索框:从输入层到渲染层的完整实现

手写可定制搜索框:从输入层到渲染层的完整实现

1. 这个搜索框到底要解决什么问题?“编写一个具有搜索功能的搜索框”——听起来像一句教科书里的课后习题,但实际落到项目里,它从来不是“加个input框回车就完事”的事。我做过不下二十个带搜索功能的前端模块,从内部管理后台的员…

2026/10/13 17:16:22 阅读更多 →
liteLLM 实战:搭建统一大模型网关,搞定多模型路由与故障转移

liteLLM 实战:搭建统一大模型网关,搞定多模型路由与故障转移

litellm 是我最近半年里在生产环境反复折腾的一个开源项目,它的定位很直接:把各家大模型的 API 统一成一个网关。过去我们要接多个模型服务商,得分别记各自的接口地址、鉴权方式、请求格式、限流规则,代码里写一堆 if-else 或者适…

2026/10/13 17:16:22 阅读更多 →
7种高级RAG架构实战指南:从混合检索到知识图谱增强

7种高级RAG架构实战指南:从混合检索到知识图谱增强

RAG(检索增强生成)这两年几乎成了LLM应用的标配,但不少同行跟我说,照着网上的demo做了一套“embedding topk 拼上下文”的流程,放到真实业务里效果就崩了。要么查不准,要么答案里混着一堆无关片段&#x…

2026/10/13 17:16:22 阅读更多 →

最新新闻

Service层命名规范:从见名知意到代码可维护性

Service层命名规范:从见名知意到代码可维护性

接手一个业务系统,我最怕看到的不是复杂算法,而是那种一打开就让人头晕的 Service 实现类。2000 行起步,方法名字从 process 到 handle 再到 doSomething,翻遍整个类也猜不出某个方法是干嘛的。命名这种事,看起来不影响…

2026/10/13 17:55:28 阅读更多 →
Windows内核模块枚举与隐藏原理深度解析

Windows内核模块枚举与隐藏原理深度解析

1. 这不是“找模块”,而是在内核内存里做一次精准外科手术“枚举和隐藏内核模块”——这八个字在安全研究、驱动开发或系统调试场景中,绝不是一句轻飘飘的技术术语。它背后是一整套对Windows内核运行时状态的深度观测与主动干预能力。我第一次在某高校实…

2026/10/13 17:55:28 阅读更多 →
Hibernate二级缓存Provider详解:从原理到选型与排坑

Hibernate二级缓存Provider详解:从原理到选型与排坑

被人突然问起“Hibernate的caching provider是什么”,我第一反应是:能问出这个词的人,多半已经看到配置文件里那一堆以hibernate.cache开头的键,但又没搞懂这些键到底在切换什么。这篇文章就把这个词拆开讲清楚,重点解…

2026/10/13 17:55:28 阅读更多 →
电能质量复合扰动识别:混沌集成决策树实战解析

电能质量复合扰动识别:混沌集成决策树实战解析

简介:这是一份面向电能质量复合扰动识别研究的MATLAB完整源程序包,对应知网论文《基于混沌集成决策树的电能质量复合扰动识别》,可作为电气工程、信号处理及机器学习方向的毕业设计或课题研究参考,帮助复现算法并开展对比实验。程…

2026/10/13 17:55:28 阅读更多 →
CentOS局域网DNS搭建:BIND9多域名权威解析实战

CentOS局域网DNS搭建:BIND9多域名权威解析实战

1. 为什么在CentOS上自建局域网DNS不是“多此一举”,而是刚需落地的第一步很多人看到“CentOS搭建局域网DNS”第一反应是:不就是改个/etc/resolv.conf?内网查个主机名用/etc/hosts不就完事了?我试过——在某高校实验室的物联网教学…

2026/10/13 17:55:28 阅读更多 →
ActiveMQ consumerCount精准获取与实战调优指南

ActiveMQ consumerCount精准获取与实战调优指南

1. 项目概述:为什么“获取消费者数量”是 ActiveMQ 运维与调优的黄金指标在某公司消息中间件团队的实际运维中,我接手的第一个紧急故障就和consumerCount直接相关——一个订单履约服务突然延迟飙升,下游库存扣减平均耗时从200ms暴涨到8秒。排…

2026/10/13 17:54:25 阅读更多 →

日新闻

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

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

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

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/13 16:22:04 阅读更多 →
影刀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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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 阅读更多 →