8PSK数字调制系统仿真拆包:从MATLAB脚本到Simulink链路
简介这份资源面向通信工程、电子信息类专业学生及数字调制技术初学者围绕8PSK数字调制系统提供一套可运行的MATLAB仿真代码帮助读者从原理到实现理解多进制相位调制。压缩包共14个文件以11个.m脚本和3个.mdl仿真模型为主整体约29KB脚本侧重相位映射、调制解调与误码率计算模型文件则便于在Simulink中直观观察星座图与波形变化。内容覆盖8PSK的相位状态划分、二进制码元映射、载波恢复与位定时同步等关键环节并可与BPSK、QPSK在频谱效率与抗噪性能上做对比实验。已有192人学习适合作为课程设计、实验报告或自学练手的参考素材帮助读者快速搭建仿真环境、验证调制解调流程并分析不同信噪比下的误码表现。1. 8PSK 数字调制系统拆包从 chapter7.zip 到能跑通的仿真链路拿到chapter7.zip的时候我第一反应是这包名起得真够随意的——chapter7一看就是某本通信原理教材或者课程配套的仿真代码包。解压之后果然里面躺着 15 个文件ex1.m到ex11.m一堆脚本外加ex2.mdl、ex4.mdl、ex7.mdl三个 Simulink 模型还有ex2sim.m、ex4sim.m、ex7sim.m三个配套的仿真回调脚本。这套东西的核心主题就一个8PSK 数字调制系统的建模与仿真。如果你正在学通信原理、做课程设计或者需要快速验证一个多进制相位调制链路的误码率性能这个包能帮你省掉从零搭模型的时间。它覆盖了从星座映射、脉冲成型、载波调制到相干解调、误码统计的完整流程而且脚本和 Simulink 模型双线并行——想快速看结果就跑.m想看清每个模块的信号流向就开.mdl。适合通信工程专业的学生、刚入行的基带算法工程师以及需要快速复现 8PSK 链路做对比实验的人。不过先说清楚这包不是那种“一键出图”的成品工具它更像是一套教学演示代码参数需要你自己根据场景调部分脚本的默认信噪比设置偏高直接跑出来的误码率曲线会好看得不太真实。下面我按实际拆包和跑通的顺序把关键环节和踩过的坑一个个说清楚。2. 文件结构与运行环境先搞清楚每个 .m 和 .mdl 的分工2.1 15 个文件到底怎么分类解压后别急着双击运行先把文件按功能分个组不然很容易在ex5.m和ex7sim.m之间绕晕。我整理了一张表按“信号生成—调制—信道—解调—误码统计”这条链路来归类文件类型在链路中的角色建议运行顺序ex1.m脚本基础星座映射与波形观察1ex2.mex2.mdlex2sim.m脚本模型8PSK 调制器建模与仿真2ex3.m脚本脉冲成型滤波器设计与频谱3ex4.mex4.mdlex4sim.m脚本模型加性高斯白噪声信道仿真4ex5.m脚本相干解调与星座判决5ex6.m脚本误码率理论值与仿真值对比6ex7.mex7.mdlex7sim.m脚本模型完整链路 Simulink 集成7ex8.m~ex11.m脚本扩展实验相位噪声、频偏影响等按需ex2.mdl、ex4.mdl、ex7.mdl这三个 Simulink 模型是层层递进的ex2只搭调制ex4加入信道ex7是完整收发链路。对应的ex2sim.m、ex4sim.m、ex7sim.m不是用来直接跑的它们是模型打开时自动加载参数的初始化脚本里面定义了载波频率、符号率、信噪比范围这些变量。如果你改了模型里的参数但没同步改*sim.m仿真结果会对不上。2.2 MATLAB 版本与工具箱依赖这套代码我分别在 R2018b 和 R2022a 上跑过都能运行但有几个注意点。Simulink 模型用的是经典库模块没有依赖太新的通信工具箱函数所以版本兼容性还算好。不过ex6.m里用到了berawgn函数来算理论误码率这个函数在通信工具箱里没装的话会报错。检查工具箱的命令很简单% 检查通信工具箱是否安装 ver(comm) % 如果返回空说明没装需要补装 % 另外确认 Simulink 可用 ver(simulink)如果ver(comm)返回空ex6.m和部分涉及理论曲线的脚本会跑不了。替代方案是自己写一个 8PSK 理论误码率公式但精度和berawgn有差异后面第 5 章会讲怎么处理。提示R2018b 之前的版本Simulink 模型的.mdl格式可能打不开需要先另存为.slx。如果双击.mdl没反应在 MATLAB 命令窗口用open_system(ex7.mdl)试试。3. 从 ex1.m 到 ex5.m手动跑通一条 8PSK 调制解调链路3.1 星座映射与符号速率设置ex1.m是整个包的入口它做的事情很基础生成随机二进制序列按 3 bit 一组映射到 8PSK 的 8 个相位点上。8PSK 每个符号携带 3 个二进制位相位间隔 45°这是它比 QPSK 频谱效率高的根本原因。打开ex1.m核心代码大概长这样% ex1.m 核心片段8PSK 星座映射 M 8; % 调制阶数 k log2(M); % 每符号比特数 3 numSymbols 1000; % 仿真符号数 dataBits randi([0 1], numSymbols*k, 1); % 生成随机比特流 % 将比特流按 3 bit 分组转为十进制符号 dataSym bi2de(reshape(dataBits, k, numSymbols)., left-msb); % 8PSK 相位映射0~7 对应 0, 45, 90, ..., 315 度 phases 2*pi*dataSym/M; modSignal exp(1j*phases); % 复基带信号 % 画星座图 scatterplot(modSignal); title(8PSK 星座图);这里有几个参数需要你根据实际场景改。numSymbols默认 1000做误码率曲线时至少要调到 10^5 量级不然低信噪比下的误码统计会很不稳定。bi2de的left-msb选项决定了比特到符号的映射顺序如果你要和某个标准比如 DVB-S对齐映射表可能不一样需要手动改相位对应关系。跑完ex1.m你会看到 8 个点均匀分布在单位圆上。如果星座点看起来偏移或者幅度不对检查exp(1j*phases)前面有没有做归一化——有些教材代码会乘一个sqrt(Es)这里默认是单位功率。3.2 脉冲成型与频谱观察ex3.m负责脉冲成型。8PSK 信号如果直接用矩形脉冲频谱旁瓣衰减很慢实际系统里会用根升余弦滤波器来压缩带宽。这个脚本里用的常见参数是滚降系数 0.35、每符号 4 个采样点。% ex3.m 核心片段根升余弦脉冲成型 sps 4; % 每符号采样数 rolloff 0.35; % 滚降系数 span 6; % 滤波器跨度符号数 % 设计根升余弦滤波器 rrcFilter rcosdesign(rolloff, span, sps, sqrt); % 上采样并滤波 modSignalUpsampled upsample(modSignal, sps); txSignal conv(modSignalUpsampled, rrcFilter, same); % 画频谱 pwelch(txSignal, [], [], [], sps); title(8PSK 发射信号功率谱);sps这个参数直接影响仿真速度和频谱分辨率。设成 4 是速度和精度的折中如果你要看更精细的频谱细节可以调到 8 或 16但仿真时间会成倍增加。span控制滤波器截断长度6 个符号跨度在滚降 0.35 时已经够用再大对频谱改善不明显反而增加计算量。跑完这个脚本你会看到功率谱主瓣宽度大约在(1rolloff)*Rs/2的位置开始滚降。如果旁瓣抑制不够先检查rcosdesign的sqrt参数有没有漏掉——不加这个参数设计出来的是升余弦而不是根升余弦收发匹配会出问题。3.3 加噪、解调与误码统计ex4.m和ex5.m是连在一起用的。ex4.m给发射信号加高斯白噪声ex5.m做相干解调和星座判决。这里的关键是信噪比的换算——awgn函数默认按符号信噪比Es/N0加噪但误码率曲线通常看的是Eb/N0两者差一个log2(M)的因子。% ex4.m ex5.m 核心片段加噪与解调 EbN0_dB 10; % 每比特信噪比 EsN0_dB EbN0_dB 10*log10(k); % 换算为符号信噪比 rxSignal awgn(txSignal, EsN0_dB, measured); % 匹配滤波 rxFiltered conv(rxSignal, rrcFilter, same); % 下采样 rxDownsampled rxFiltered(1:sps:end); % 星座判决找最近的相位点 rxPhases angle(rxDownsampled); rxSym mod(round(rxPhases/(2*pi/M)), M); rxBits de2bi(rxSym, k, left-msb); rxBits rxBits(:); % 误码统计 [numErrors, ber] biterr(dataBits, rxBits(1:length(dataBits))); fprintf(Eb/N0 %d dB, BER %.4e\n, EbN0_dB, ber);这段代码里最容易翻车的地方是下采样时刻。rxFiltered(1:sps:end)假设匹配滤波器的峰值正好在采样点上但实际因为滤波器延迟最佳采样点可能有偏移。如果你跑出来的误码率比理论值高很多先把rxDownsampled的星座图打出来看看点是不是散开的。如果是试着调整下采样偏移量比如改成rxFiltered(span*sps/21:sps:end)。另外awgn的measured选项会让函数先测量信号功率再按指定信噪比加噪如果你已经对信号做了归一化可以去掉这个选项直接指定功率。两种方式出来的结果在低信噪比下会有细微差异做对比实验时要统一。4. Simulink 模型 ex7.mdl完整链路的模块级拆解4.1 模型打开与参数初始化ex7.mdl是这个包里最完整的 Simulink 模型包含了从信源、8PSK 调制、根升余弦滤波、AWGN 信道、匹配滤波、解调到误码统计的整条链路。直接双击打开之前先在 MATLAB 命令窗口跑一遍ex7sim.m它会把模型需要的所有参数加载到工作区。% ex7sim.m 关键参数定义 M 8; % 调制阶数 k log2(M); % 每符号比特数 Rs 1000; % 符号率 1000 Baud sps 4; % 每符号采样数 rolloff 0.35; % 滚降系数 EbN0_dB 0:2:12; % 信噪比扫描范围这些变量名必须和模型里各模块引用的变量名一致否则打开模型会报“未定义变量”。如果你改了EbN0_dB的范围记得同步检查误码统计模块里的阈值设置。打开模型用open_system(ex7.mdl)不要直接双击文件因为有些系统关联会把它当文本打开。模型打开后先别急着点运行按CtrlE打开配置参数确认“求解器”设置的是固定步长、离散求解器步长和1/(Rs*sps)匹配。4.2 关键模块参数与信号流向模型里几个核心模块的参数需要你手动核对Bernoulli 信源概率设 0.5输出数据类型 double采样时间1/(Rs*k)。8PSK 调制器用“M-PSK Modulator Baseband”模块M 设为 8星座图参数选“Binary”或“Gray”看你的映射需求。Gray 映射在低信噪比下误码率更低但和ex1.m里的自然映射不一致做对比时要注意。根升余弦滤波器收发各一个参数用rcosdesign(rolloff, span, sps)生成的系数或者直接用“Raised Cosine Transmit Filter”模块滚降系数设 0.35。AWGN 信道信噪比模式选Eb/N0输入EbN0_dB变量符号周期设1/Rs。误码统计用“Error Rate Calculation”模块接收延迟要设成滤波器群延迟的总和一般是span*sps左右具体值看ex7sim.m里的delay变量。信号流向是信源 → 8PSK 调制 → 上采样 → 根升余弦滤波 → AWGN → 匹配滤波 → 下采样 → 8PSK 解调 → 误码统计。每个模块的采样时间要匹配否则 Simulink 会报采样时间冲突。4.3 运行仿真与误码率曲线导出模型跑起来之后误码统计模块会实时显示误码率。但要做完整的误码率曲线需要在外层套一个for循环扫描EbN0_dB每次跑完用sim命令取结果。% 批量运行 ex7.mdl 并收集误码率 EbN0_dB 0:2:12; berSim zeros(size(EbN0_dB)); for i 1:length(EbN0_dB) assignin(base, EbN0_dB, EbN0_dB(i)); sim(ex7.mdl); berSim(i) BER(end); % BER 是误码统计模块的输出变量名 end % 画曲线 semilogy(EbN0_dB, berSim, o-); grid on; xlabel(Eb/N0 (dB)); ylabel(BER); title(8PSK 误码率曲线Simulink 仿真);这里BER变量名取决于误码统计模块里设置的变量名打开模块看一下“变量名”那一栏填的是什么。如果跑完berSim全是零说明信噪比范围设太高了8PSK 在Eb/N0超过 12 dB 之后误码率已经低到 10^-5 以下需要加大仿真符号数才能统计到。注意Simulink 跑误码率曲线时每个信噪比点至少需要 10^5 个符号才能保证统计稳定性。如果模型里信源每帧只有 1000 个符号需要把仿真时间设长或者用Frame-Based模式一次处理多帧。5. 避坑与排查跑 8PSK 仿真时最容易翻车的五个地方5.1 误码率曲线和理论值对不上现象ex6.m跑出来的仿真误码率比berawgn算的理论值高一个数量级或者曲线斜率不对。原因最常见的是信噪比换算错了。awgn函数如果没加measured它默认信号功率是 1 W但你的发射信号经过脉冲成型后功率可能不是 1。另外Eb/N0和Es/N0的换算漏掉log2(M)也会导致曲线平移。解决在加噪前先算一下发射信号的实际功率mean(abs(txSignal).^2)然后手动指定噪声功率。或者统一用Es/N0做横轴最后再换算成Eb/N0画图。5.2 Simulink 模型报采样时间冲突现象点运行后弹窗报错“采样时间不匹配”或者“所有模块的采样时间必须是离散的”。原因模型里有的模块继承了-1继承采样时间有的模块显式设了1/(Rs*k)两者不一致。特别是信源和调制器之间、滤波器和下采样之间容易出这个问题。解决在模型配置里把求解器设为“固定步长/离散”步长统一设为1/(Rs*sps)。然后逐个检查模块的采样时间参数信源和调制器用1/(Rs*k)滤波器和信道用1/(Rs*sps)下采样之后恢复成1/Rs。5.3 星座图旋转或发散现象解调后的星座图整体旋转了一个角度或者点散得很开误码率居高不下。原因载波相位没有对齐。8PSK 对相位偏移非常敏感哪怕 10° 的固定相位误差都会让误码率显著恶化。ex5.m里的相干解调假设接收端载波和发射端完全同频同相但实际仿真中滤波器延迟、下采样时刻偏移都会引入相位误差。解决在解调前加一个相位估计和校正步骤。简单做法是用星座点的平均相位作为参考把接收信号乘上exp(-1j*meanPhase)。如果要做更真实的仿真可以加一个 Costas 环或者判决反馈相位估计。5.4 ex6.m 报错找不到 berawgn现象运行ex6.m时提示“未定义函数或变量 berawgn”。原因MATLAB 没装通信工具箱或者工具箱路径没加载。解决先ver(comm)确认。如果确实没有可以自己写一个 8PSK 理论误码率近似公式% 8PSK 理论误码率近似高信噪比 EbN0_lin 10.^(EbN0_dB/10); berTheory (2/k) * qfunc(sqrt(2*EbN0_lin*k) * sin(pi/M));这个近似在Eb/N0大于 8 dB 时和berawgn结果很接近低信噪比下会偏乐观做对比时心里有数就行。5.5 仿真速度慢到无法忍受现象跑一次误码率曲线要几个小时ex7.mdl尤其慢。原因Simulink 模型默认用变步长求解器或者符号数设得太大每个信噪比点都重新编译模型。解决把求解器改成固定步长离散关闭“仿真参数”里的“自动编译”选项。另外把EbN0_dB的扫描点数减少比如从0:1:12改成0:2:12中间点用插值补。如果还是慢把sps从 4 降到 2精度损失不大但速度翻倍。6. 进阶技巧用 ex8.m 到 ex11.m 做相位噪声与频偏敏感性分析ex8.m到ex11.m这四个脚本是这个包里最容易被忽略的部分但它们恰恰是 8PSK 从“能跑通”到“能评估实际性能”的关键。8PSK 相比 QPSK 最大的劣势就是对相位噪声和频率偏移敏感这四个脚本分别从不同角度量化了这种敏感性。ex8.m做的是相位噪声注入。它在发射信号上乘一个exp(1j*phaseNoise)其中phaseNoise是一个零均值高斯随机过程标准差从 0 到 10° 扫描。跑完你会看到一条曲线相位噪声标准差每增加 2°误码率在Eb/N010 dB时大约恶化 0.5 到 1 dB。这个数据在选晶振或者评估锁相环带宽时很有参考价值。% ex8.m 核心相位噪声敏感性扫描 phaseNoiseStd 0:2:10; % 相位噪声标准差度 berPhaseNoise zeros(size(phaseNoiseStd)); for i 1:length(phaseNoiseStd) noise phaseNoiseStd(i) * pi/180 * randn(size(modSignal)); rxSignal modSignal .* exp(1j*noise); % 后续加噪、解调、误码统计... berPhaseNoise(i) ber; endex9.m和ex10.m分别做频率偏移和定时误差的影响。频率偏移会让星座图整体旋转ex9.m里扫描的频偏范围是符号率的 0.1% 到 1%。8PSK 在频偏超过符号率 0.5% 之后误码率急剧上升这个阈值比 QPSK 严格得多。ex10.m的定时误差扫描则告诉你采样时刻偏移多少会让误码率翻倍——经验值是超过sps的 10% 就需要加定时同步算法了。ex11.m是我个人觉得最有用的一个它把前面几个敏感性分析的结果汇总成一张表对比了 8PSK 在相位噪声、频偏、定时误差分别作用下的性能退化程度。你可以直接拿这张表去评估你的系统需不需要加额外的同步模块。从那以后我每次跑 8PSK 仿真都会先把ex8.m到ex11.m过一遍确认当前参数下相位噪声和频偏的容忍度再回头调主链路的信噪比预算。这个习惯帮我省了很多次“链路跑通了但实际指标不达标”的后悔药。希望这套拆包笔记能帮到你。本文还有配套的精品资源点击获取

相关新闻

基于PSCAD与MATLAB联合仿真的IEEE 9节点电力系统网络攻击数据集生成框架研究

基于PSCAD与MATLAB联合仿真的IEEE 9节点电力系统网络攻击数据集生成框架研究

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 &#x1f381…

2026/10/13 12:10:36 阅读更多 →
关键词爬虫实战:内容与用户双维度数据采集与存储方案

关键词爬虫实战:内容与用户双维度数据采集与存储方案

1. 从"关键词"到"用户画像":这个爬虫到底在解决什么问题做数据采集这行的朋友都有一个共识:单条内容本身的价值有限,真正值钱的是内容背后的人。你拿到一条关于某个关键词的帖子,知道有人在讨论这件事&#x…

2026/10/13 11:49:25 阅读更多 →
【期刊论文复现】基于抗脉冲平均滤波与滑动平均滤波的飞轮锂电池混合储能平抑风电功率策略(Simulink仿真实现)

【期刊论文复现】基于抗脉冲平均滤波与滑动平均滤波的飞轮锂电池混合储能平抑风电功率策略(Simulink仿真实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 &#x1f381…

2026/10/13 12:10:43 阅读更多 →

最新新闻

Unity水下波光Shader:动态折射与材质自适应光照实现

Unity水下波光Shader:动态折射与材质自适应光照实现

1. 这个效果到底在解决什么问题:水面光影的“动态欺骗”本质很多人看到“Unity Shader实现水中波光照射动物身上的效果”这个标题,第一反应是:“不就是加个高光贴图或者用个Blinn-Phong算一下反射吗?”——这恰恰是踩进第一个认知…

2026/10/13 13:00:12 阅读更多 →
MATLAB水果识别实战:从图像处理到STM32部署

MATLAB水果识别实战:从图像处理到STM32部署

简介:本资源是一个基于MATLAB实现的轻量级水果图像识别程序,面向图像处理初学者、自动化专业学生及农业智能化应用开发者,解决常见水果(如香蕉、梨、西红柿、青椒等)的自动分类识别问题,适用于课程设计、小…

2026/10/13 13:00:12 阅读更多 →
金山毒霸卸载后残留弹窗的根源与彻底清理指南

金山毒霸卸载后残留弹窗的根源与彻底清理指南

卸载金山毒霸之后还在被弹窗骚扰,这事儿太常见了。我见过不少用户重装了系统才解决问题,其实根本不用这么极端。这篇内容就把残留弹窗的来源、手工清理步骤和常见坑一次性说清楚。 先说明白一个核心事实:金山毒霸的卸载程序只会移除主体程序…

2026/10/13 13:00:12 阅读更多 →
深度学习图像预处理:transforms 核心技术与实战指南

深度学习图像预处理:transforms 核心技术与实战指南

1. 图像预处理到底在解决什么问题 做过深度学习项目的人都有一个共识:模型效果不好,八成不是网络结构的问题,而是数据没喂对。我刚开始接触计算机视觉那会儿,拿到一批图片就直接往网络里塞,结果训练loss震荡得厉害&…

2026/10/13 13:00:12 阅读更多 →
Linux内核模块入门:从Hello World驱动到加载卸载全流程

Linux内核模块入门:从Hello World驱动到加载卸载全流程

1. 项目概述:从“Hello World”开始,真正摸到Linux内核驱动的脉搏你点开这个标题,大概率不是想看教科书式的定义,而是手痒了——想亲手敲几行代码,让自己的程序跑进内核空间,亲眼看着insmod命令执行后&…

2026/10/13 13:00:12 阅读更多 →
Windows下Claude Code安装配置与避坑全攻略

Windows下Claude Code安装配置与避坑全攻略

“Claude Code 在 Windows 上到底能不能用?”——这恐怕是过去一个月我在各种技术群里被问最多的问题。一方面,这个命令行形态的 AI 编程代理确实很香,直接在终端里让它读仓库、改代码、跑测试、提 PR,整个工作流都在一个地方流转…

2026/10/13 12:59:11 阅读更多 →

日新闻

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

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

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

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 阅读更多 →