PHP人脸融合后端封装:面向课设与轻量级项目的腾讯AI集成方案
简介这是一份基于腾讯AI人脸融合API实现的轻量级PHP Web Demo面向Web开发初学者与AI接口调用实践者帮助快速掌握第三方AI能力在服务端的集成方法尤其适用于H5类趣味图像生成场景如军装换脸等社交传播型应用。资源包共10个文件含4个核心PHP脚本index.php、doUpload.php、HttpApi.php等构成完整请求链路、2张模板图PNG/JPG、1份配置模板config_temp.php及README说明文档整体仅73KB结构简洁、依赖极少便于本地快速部署调试。目前已有2495人学习下载读者可直接获得可运行的完整人脸融合服务原型包括Base64图像上传处理、腾讯AI签名算法封装、动态模型选择逻辑以及新增的自定义图片模板支持能力无需从零搭建接口层显著降低AI API工程化入门门槛。1. 人脸融合不是“换脸”而是可控的特征迁移一份面向课程设计与毕设落地的 PHP 后端集成方案很多同学拿到「人脸融合」课题第一反应是找 Python 深度学习模型、下 PyTorch、调 facefusion 仓库——结果卡在环境编译、CUDA 版本、显存不足上两周过去连 demo 都没跑通。但实际交付场景里90% 的课程设计、校企合作轻量级项目、甚至部分政务/教育类内部系统并不需要本地训练模型或实时高清推理它们真正需要的是一套稳定可部署、接口清晰、前后端解耦、能嵌入现有 PHP 系统的人脸融合能力。FaceFusion 这个项目就是为这类真实交付场景而生它不碰训练、不依赖 GPU、不强制 Python 环境而是把腾讯 AI 平台提供的人脸融合 API 封装成一套可直接集成进 ThinkPHP/Laravel/原生 PHP 项目的后端服务层。你只需要传两张图源脸 目标脸它就返回融合结果 URL 或 base64整个过程毫秒级响应、失败有明确错误码、日志可追溯。适合正在做「基于 Web 的图像处理系统」「AI 工具集课设」「校园活动人脸特效后台」的同学也适合某公司快速给现有 PHP 后台加一个“趣味合影”功能模块的工程师。2. 接口封装设计从腾讯 AI 开放平台到 PHP 可调用服务的三层抽象2.1 腾讯 AI 人脸融合 API 的能力边界与选型依据腾讯 AI 开放平台提供的是标准 HTTP RESTful 接口核心能力包括支持 JPG/PNG 格式输入、最大 5MB 单图、要求人脸正向清晰非侧脸/遮挡、返回融合后图片 URL有效期 2 小时及置信度分数。它不开放模型权重也不支持自定义融合强度、表情迁移或背景保留等高级参数——这恰恰是优势能力收敛、协议稳定、无运维负担。相比自己搭 Stable Diffusion ControlNet 的“玄学调参流”腾讯 API 的错误码体系完整如4001表示人脸检测失败4003表示图片格式错误且有官方 SDKPython/Java/Node.js但唯独缺 PHP 官方支持。这就成了我们封装的价值起点补上 PHP 这一环让整套能力无缝接入国内高校最常用的 LAMP/WAMP 技术栈。提示不要试图用 cURL 直接拼 JSON 发请求。腾讯 API 要求Authorization头携带签名TC3-HMAC-SHA256含时间戳、随机串、请求体哈希手写极易出错。必须封装签名生成逻辑。2.2 PHP 封装层的三层结构Client → Service → Facade我们采用分层封装避免业务代码与 API 细节强耦合Client 层负责网络通信、签名生成、HTTP 状态码拦截、重试机制默认 2 次间隔 300ms。关键点在于signStringToHex()方法需严格按腾讯文档实现 SHA256-HMAC 签名且X-TC-Timestamp必须是秒级时间戳非毫秒否则返回401 Unauthorized。Service 层定义业务契约如FaceFusionService::fuse($sourceImage, $targetImage, $options [])。它接收文件路径或 base64 字符串自动判断类型、读取二进制、构造 multipart/form-data 请求体并将腾讯返回的ResultUrl和Confidence映射为统一响应数组。Facade 层为 Laravel/ThinkPHP 提供门面支持。例如在 Laravel 中注册FaceFusion门面业务控制器里直接写FaceFusion::fuse($src, $dst)无需 new 实例或管理依赖。// src/Client/TencentFaceFusionClient.php class TencentFaceFusionClient { private $secretId; private $secretKey; private $region ap-guangzhou; private $endpoint https://facefusion.tencentcloudapi.com; public function __construct(string $secretId, string $secretKey) { $this-secretId $secretId; $this-secretKey $secretKey; } public function fuse(array $params): array { $url $this-endpoint . /?ActionFuseFaceVersion2018-12-01Region . $this-region; $httpMethod POST; $canonicalUri /; $canonicalQueryString ActionFuseFaceVersion2018-12-01Region . $this-region; $timestamp time(); $date date(Y-m-d, $timestamp); $signedHeaders content-type;host;x-tc-content-sha256;x-tc-timestamp; $hashedRequestPayload hash(sha256, $params[body] ?? ); // 此处省略长签名字符串拼接逻辑共7步实际代码中已完整实现 $authorization $this-buildAuthorization( $httpMethod, $canonicalUri, $canonicalQueryString, $signedHeaders, $hashedRequestPayload, $date, $timestamp ); $headers [ Authorization: . $authorization, Content-Type: multipart/form-data; boundary . $params[boundary], Host: facefusion.tencentcloudapi.com, X-TC-Content-SHA256: . $hashedRequestPayload, X-TC-Timestamp: . $timestamp, ]; $ch curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $params[body]); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 30); $response curl_exec($ch); $httpCode curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpCode ! 200) { throw new FaceFusionException(API Error: {$httpCode}, $httpCode); } return json_decode($response, true); } }这段代码的核心价值不在“能发请求”而在于把腾讯复杂的签名流程固化为可测试、可复用、可配置的组件。我一般会为buildAuthorization()单独写单元测试用固定 secretKey 和 timestamp 生成签名与腾讯官方签名工具输出比对确保 100% 一致——这是后续所有功能稳定的地基。2.3 错误归一化与业务友好响应设计腾讯原始返回错误是分散的网络超时抛异常、HTTP 4xx 返回 JSON 错误体、5xx 是服务端问题。我们在 Service 层统一捕获并映射为业务可理解的错误码原始来源原始错误码封装后错误码业务含义cURL 超时—ERR_NETWORK_TIMEOUT网络不稳定请重试HTTP 4004001ERR_FACE_NOT_DETECTED源图或目标图未检测到清晰人脸HTTP 401—ERR_INVALID_CREDENTIALSSecretId/SecretKey 无效HTTP 4034003ERR_IMAGE_FORMAT_INVALID图片格式或大小超限JSON 解析失败—ERR_API_RESPONSE_MALFORMED腾讯接口临时异常这样前端调用时只需判断response[code]无需解析原始响应结构。例如 Vue 组件里if (res.code ERR_FACE_NOT_DETECTED) { ElMessage.error(请上传正脸、无遮挡的照片); } else if (res.code ERR_IMAGE_FORMAT_INVALID) { ElMessage.error(图片需为 JPG/PNG且小于 5MB); }这种设计让前后端协作成本大幅降低——学生做课设时不用再和“为什么报 4001 却显示空白页”死磕两小时。3. 业务集成实践在 ThinkPHP 6 中快速接入人脸融合功能3.1 目录结构与 Composer 包管理我们不把 FaceFusion 当作“插件”硬塞进框架而是作为独立 Composer 包维护。项目根目录下执行composer require facefusion/tencent-php-sdk:dev-main包内标准 PSR-4 结构如下src/ ├── Client/ │ └── TencentFaceFusionClient.php ├── Exception/ │ └── FaceFusionException.php ├── Service/ │ └── FaceFusionService.php ├── Facade/ │ └── FaceFusion.php // ThinkPHP 门面类 └── Support/ └── FileHelper.php // 图片格式校验、base64 转二进制等工具注意dev-main分支代表主开发线已通过 PHP 7.4 ~ 8.2 全版本测试。若使用 Laravel需额外安装laravel/framework兼容适配器包内已提供LaravelServiceProvider。3.2 ThinkPHP 6 门面注册与配置注入在app/provider.php中注册门面use think\Service; use facefusion\facade\FaceFusion; return [ // ...其他服务 FaceFusion::class Service::class, ];创建配置文件config/facefusion.php?php return [ secret_id env(TENCENT_SECRET_ID, ), secret_key env(TENCENT_SECRET_KEY, ), region env(TENCENT_REGION, ap-guangzhou), timeout (int)env(TENCENT_TIMEOUT, 30), retry_times (int)env(TENCENT_RETRY_TIMES, 2), log_enabled (bool)env(FACEFUSION_LOG_ENABLED, true), ];.env 文件中填写TENCENT_SECRET_IDAKIDxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx TENCENT_SECRET_KEYxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx提示SecretKey 绝对不能写死在代码里必须通过环境变量注入。某同学曾把密钥提交到 GitHub 公共仓库导致账号被刷爆调用量被腾讯云冻结三天——这是血泪经验。3.3 控制器实现支持文件上传、URL 远程拉取、base64 三种输入方式典型控制器app/controller/FaceFusionController.php?php namespace app\controller; use think\Controller; use facefusion\Service\FaceFusionService; use facefusion\Support\FileHelper; class FaceFusionController extends Controller { public function fuse() { $service new FaceFusionService(); // 1. 获取源图支持三种方式 $source $this-request-file(source); if (!$source) { $source $this-request-param(source_url, ); if (!$source) { $source $this-request-param(source_base64, ); } } // 2. 获取目标图同上 $target $this-request-file(target); if (!$target) { $target $this-request-param(target_url, ); if (!$target) { $target $this-request-param(target_base64, ); } } try { // 自动识别输入类型并转换为二进制流 $sourceBin FileHelper::resolveImageInput($source); $targetBin FileHelper::resolveImageInput($target); $result $service-fuse($sourceBin, $targetBin, [ return_type url, // 或 base64 quality 90, // JPEG 质量70~100 ]); return json([code 0, data $result]); } catch (\Exception $e) { return json([ code -1, msg $e-getMessage(), err_code $e instanceof \facefusion\Exception\FaceFusionException ? $e-getCode() : ERR_UNKNOWN ]); } } }FileHelper::resolveImageInput()内部逻辑若为think\File对象上传文件调用getRealPath()读取若为 URL用file_get_contents()拉取需开启allow_url_fopen或改用 cURL若为 base64过滤data:image/xxx;base64,前缀后base64_decode()最后统一校验是否为合法图片exif_imagetype()、大小≤5MB、宽高≥100px。这个控制器已覆盖 95% 的使用场景网页表单上传、小程序 wx.uploadFile 后直传、H5 页面 canvas.toDataURL() 后传 base64——学生做毕设时直接复制粘贴就能跑通。4. 避坑指南PHP 集成人脸融合最常翻车的 5 个点4.1 现象调用返回401 Unauthorized但 SecretId/SecretKey 确认无误原因腾讯签名算法中X-TC-Timestamp必须是秒级时间戳且服务器时间与 NTP 时间偏差不能超过 5 分钟。PHPtime()返回秒级没错但若服务器时钟漂移如虚拟机休眠后未同步会导致签名失效。解决在调用前增加时间校验逻辑$serverTime time(); $ntpTime (int)shell_exec(curl -s http://worldtimeapi.org/api/ip | grep -oP unixtime\:\K\d); if (abs($serverTime - $ntpTime) 300) { throw new FaceFusionException(Server time skew too large. Please sync NTP.); }4.2 现象上传大图如 4MB JPG返回4003提示“图片格式错误”原因PHP 默认post_max_size 8M但upload_max_filesize 2M且腾讯要求图片 ≤5MB。若upload_max_filesize小于 5M文件根本传不到 PHP 层Nginx/Apache 会直接返回 413。解决修改php.iniupload_max_filesize 8M post_max_size 10M max_execution_time 60并在 Nginx 配置中同步设置client_max_body_size 10M;。4.3 现象融合结果人脸扭曲、五官错位但源图和目标图都正常原因腾讯 API 对人脸角度敏感。若源图或目标图中人脸偏转 15°侧脸、或存在大面积遮挡口罩、墨镜、或光照极不均匀背光/过曝会导致特征点定位失败融合结果失真。这不是代码 bug而是算法能力边界。解决前置人脸质量检测。我们封装了简易校验public function validateFaceQuality(string $imagePath): bool { $info getimagesize($imagePath); if (!$info || $info[0] 200 || $info[1] 200) return false; // 使用 OpenCV-PHP 扩展可选或调用腾讯「人脸检测」API 做预检 // 此处简化为检查平均亮度避免过曝/欠曝 $img imagecreatefromjpeg($imagePath); $avgBrightness 0; for ($y 0; $y $info[1]; $y 10) { for ($x 0; $x $info[0]; $x 10) { $rgb imagecolorat($img, $x, $y); $r ($rgb 16) 0xFF; $g ($rgb 8) 0xFF; $b $rgb 0xFF; $avgBrightness ($r $g $b) / 3; } } $avgBrightness / (($info[0]/10) * ($info[1]/10)); imagedestroy($img); return $avgBrightness 30 $avgBrightness 220; // 合理亮度区间 }4.4 现象并发调用时偶发cURL error 7Failed to connect原因腾讯 API 有 QPS 限制免费版 5 QPSPHP 默认 cURL 不复用连接高频请求下 TCP 连接耗尽。解决在 Client 层启用 cURL 连接池private $chPool []; public function getCurlHandle(): \CurlHandle { if (!empty($this-chPool)) { return array_pop($this-chPool); } return curl_init(); } public function releaseCurlHandle(\CurlHandle $ch) { if (count($this-chPool) 10) { // 池大小上限 $this-chPool[] $ch; } else { curl_close($ch); } }4.5 现象返回的ResultUrl2 小时后失效用户无法二次下载原因腾讯不提供长期存储ResultUrl是临时 CDN 链接。若需持久化必须主动下载并保存到自有存储如本地磁盘、OSS、七牛云。解决在 Service 层增加自动落盘选项$result $service-fuse($src, $dst, [return_type url, auto_save true]); // 自动触发 file_get_contents($result[ResultUrl]) → 保存到 public/uploads/fuse/xxx.jpg // 返回的 data 中增加 local_path 字段5. 验收与答辩如何让老师/评审一眼看懂你的工作量与技术深度5.1 验收清单5 项必测功能 3 项加分项别只交一个“能跑就行”的 demo。我带过的某高校课程设计要求学生提交《验收对照表》由导师逐项打钩。你照着做答辩时直接摊开表格效率翻倍序号验收项测试方法是否通过备注1支持 JPG/PNG 上传融合上传两张 100KB JPG检查返回 URL 可访问、图片人脸自然☐2支持 base64 输入前端 canvas.toDataURL() 后传 base64后端正确 decode 并融合☐3错误码精准映射故意传侧脸图检查返回ERR_FACE_NOT_DETECTED而非 500 内部错误☐4日志可追溯查看runtime/log/facefusion/下日志包含请求 ID、耗时、原始响应摘要☐5配置热更新修改.env中TENCENT_TIMEOUT5不重启服务下次请求超时即为 5 秒☐✨6自动人脸质量预检加分传一张逆光图系统提示“光线不足请重拍”而非返回扭曲结果☐体现工程严谨性✨7融合结果自动落盘加分设置auto_savetrue检查public/uploads/fuse/下生成对应时间戳命名的 JPG 文件☐解决生产环境刚需✨8ThinkPHP 门面一键调用加分在任意控制器中use facefusion\facade\FaceFusion; FaceFusion::fuse(...)成功调用☐证明架构解耦能力这张表不是摆设。我在某次毕设答辩中看到 A 同学提前打印好这份表每项旁边贴了截图和 curl 命令导师扫一眼就点头“基础扎实加分项也做了可以了。”——比讲十分钟原理管用。5.2 答辩话术用“问题驱动”代替“功能罗列”老师最烦听“我用了 PHP、封装了 API、写了控制器……”。要改成“老师我们发现三个真实问题第一学生上传侧脸照片导致融合失败没人告诉他们为什么所以我加了人脸质量预检第二老师想把融合结果存下来发班级群但腾讯链接两小时失效所以我做了自动下载落盘第三教务系统是 ThinkPHP 5.1不能升级所以我兼容了旧版本门面注册方式。”——每个技术点都绑定一个具体问题立刻建立价值感。5.3 文档与代码组织让评审愿意花时间看你的细节README.md第一行必须是FaceFusion腾讯 AI 人脸融合 PHP 封装 SDK课程设计/毕设专用紧接着用 3 行说明适用场景如“适用于 ThinkPHP 6、Laravel 8、原生 PHP 7.4 项目”docs/目录下放三份文件api_design.md接口设计图含请求/响应字段说明、error_code.md全部错误码中文释义、deploy_checklist.md上线前 10 项检查如“确认 php.ini upload_max_filesize ≥8M”所有类加 PHPDoc尤其param和throws必须写全。例如FaceFusionService::fuse()的注释里明确写出/** * 执行人脸融合 * param string|resource $sourceImage 源图路径、资源句柄或 base64 字符串 * param string|resource $targetImage 目标图路径、资源句柄或 base64 字符串 * param array $options [ * return_type url|base64, // 默认url * quality 70~100, // JPEG 质量默认90 * auto_save true|false, // 是否自动保存到本地默认false * ] * return array [code0, data[ResultUrlxxx, Confidence0.92]] * throws FaceFusionException 当 API 调用失败 */从那以后我每次交课设/毕设都强制走一遍这个验收表 文档 checklist。哪怕多花两小时答辩时少解释五分钟就是稳赢。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

SICK RFID读卡器TCP通信稳定方案:解决静默断连与粘包问题

SICK RFID读卡器TCP通信稳定方案:解决静默断连与粘包问题

简介:本资源是一套面向工业自动化开发者的C#实践项目,聚焦德国SICK RFID读卡器RFU630的TCP通信集成方案,适用于具备基础C#和网络编程能力的中级开发者,解决工业现场设备异步采集、多线程协同与跨线程UI更新等典型工程问题。压缩包…

2026/10/17 12:39:59 阅读更多 →
AI时代软件工程师的破局之道:从写代码到做决策

AI时代软件工程师的破局之道:从写代码到做决策

最近在行业交流群里看到有人转发某头部大厂工程师的一次内部分享,几个问题提得相当扎心:“未来两年,软件工程还剩下什么?”我原以为又是贩卖焦虑的标题党,但仔细读完发现,这五个问题没有一个凭空吓唬人&…

2026/10/17 12:39:59 阅读更多 →
老一体机 Win10 蓝屏?显卡驱动整合包安装避坑指南

老一体机 Win10 蓝屏?显卡驱动整合包安装避坑指南

简介:面向iMac 27英寸2011年中机型在Windows 10下使用的显卡驱动,相比Bootcamp自带旧版(2013/12/14)更新至2015/8/19版本,可解决播放视频时偶发蓝屏问题,提升系统稳定性。驱动来源于AMD官网,适配…

2026/10/17 12:39:59 阅读更多 →

最新新闻

AI时代程序员必看:脱离大模型,你还能独立工作吗?Vibe Coding挑战与应对

AI时代程序员必看:脱离大模型,你还能独立工作吗?Vibe Coding挑战与应对

本文探讨了Vibe Coding(氛围编码)如何借助AI改变编程方式,引发对程序员核心能力的思考。文章指出,AI擅长生成代码,但复杂系统判断、风险识别仍需人类智慧。强调基础知识和底层原理的重要性,提出程序员应驾驭…

2026/10/17 13:45:46 阅读更多 →
2026年企业网盘终极对比:坚果云 vs OneDrive vs Dropbox vs 百度网盘企业版

2026年企业网盘终极对比:坚果云 vs OneDrive vs Dropbox vs 百度网盘企业版

文章目录一、企业网盘选型,为什么不能只看容量和价格?二、测评方法论:15 个维度的统一标尺2.1 测评维度定义2.2 测试环境说明三、四款产品逐一深度测评3.1 坚果云团队版 —— 专业同步盘,技术团队首选🔧 核心技术要点拆…

2026/10/17 13:45:46 阅读更多 →
新手程序员必看:3个实操任务,教你如何高效利用AI大模型提升办公效率

新手程序员必看:3个实操任务,教你如何高效利用AI大模型提升办公效率

本文介绍了如何通过三个具体任务(整理文件、汇总资料、生产公众号文章)来测试和利用AI大模型提高办公效率。文章强调了明确任务需求、设定边界条件以及验证交付物的重要性,并提供了可直接复制的提示词模板。通过这些实操步骤,即使…

2026/10/17 13:45:46 阅读更多 →
普通人也能抓住的AI高薪风口!学会这些技能,薪资翻倍不是梦

普通人也能抓住的AI高薪风口!学会这些技能,薪资翻倍不是梦

AI岗位迎来大爆发,2026年1-7月同比暴涨近8倍,平均月薪破6万。不再是顶尖技术人才专属,运营、文案等普通岗位也能结合AI提效。普通人只需学会借助AI工具优化工作,即可快速提升竞争力,实现薪资翻倍。抓住AI风口&#xff…

2026/10/17 13:45:46 阅读更多 →
C# OpenXml 操作 Word 表格:从基础结构到样式合并的完整指南

C# OpenXml 操作 Word 表格:从基础结构到样式合并的完整指南

简介:面向需要在C#程序中自动化生成Word报表的.NET开发者,这份PDF演示了如何借助OpenXml SDK为Word文档添加表格。内容从引入DocumentFormat.OpenXml命名空间开始,逐步讲解AddTable方法的封装、TableGrid列数定义、表格边框样式设置&#xff…

2026/10/17 13:45:46 阅读更多 →
TPS54201低输入电压hiccup误触发,PNP三极管补偿方案解析

TPS54201低输入电压hiccup误触发,PNP三极管补偿方案解析

简介:面向LED照明系统设计人员,尤其适合熟悉电源管理IC与LED驱动器的工程师,围绕TPS54201宽输入电压(4.5V~28V)1.5A同步降压LED驱动芯片,解决低输入电压下负载LED电流不稳定的问题,并给出实际电…

2026/10/17 13:44:45 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 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/16 21:54:38 阅读更多 →
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/16 14:23:36 阅读更多 →