整站下载与网站复制实战:wget参数、链接改写与离线镜像指南
简介整站下载工具资源包以Teleport Pro为核心面向需要离线访问网站、整站镜像备份或研究网站抓取机制的用户特别适合对批量保存页面、图片、样式与脚本有明确需求的技术爱好者。压缩包共10个文件约553KB兼顾轻量与实用exe程序可直接运行PDF手册提供完整操作指引HTM帮助页面辅助查阅界面功能txt文档覆盖使用、汉化与项目说明tpp文件则为现成项目示例。已有185人学习下载适合个人学习、资料归档或小型站点备份场景。通过该包可获得可用的整站下载工具与配套学习材料理解URL解析、递归下载、资源提取、重定向处理、登录状态保持及本地文件组织等关键流程还可参照内置项目示例快速上手同时需谨记尊重网站版权确保在授权范围内使用。1. 整站下载与网站复制从“复制文件夹”到“资源工程”整站下载这个词听起来像把一个文件夹复制到本地但真正操作过的人都知道它其实是一项资源工程HTML、CSS、JS、图片、字体、JSON 接口、乃至登录态每一类资源都可能单独出问题。一个典型的翻车现场是——抓下来打开 index.html页面能渲染图片全裂样式全丢点哪个链接都是 404。所以这篇笔记会把整站下载与网站复制的完整链路拆开讲清楚从抓取工具选型、wget 参数组合、链接改写策略到带登录态的抓取、接口数据归档和完整性验证每一步都给出可以直接复现的命令和踩坑记录。适合做站点归档、离线镜像、线上迁移或本地预览的前端、运维和测试从业者。2. 抓取链路先想清楚工具选型、参数组合与增量同步机制真正动手下载一个站点前最忌讳的是拿到工具就狂点“开始”。整站抓取的本质是把一个网站的服务端资源集合变成一份本地可浏览的文件集合这个过程中有三个环节最容易变形递归深度、资源携带范围、链接改写规则。先把工具选型和各自的边界说透再谈命令后面才不会被各种玄学问题拖着走。2.1 三条主流路线的边界什么时候用 wget什么时候换 HTTrack整站下载的工具不少但真正能进生产流程的也就那么几条路线。我把实际用过的方案整理成一张对比表方便按场景选型。方案工作方式擅长场景边界与常见问题wget命令行递归抓取Linux/服务器批量归档、脚本化增量同步对 JS 动态渲染页面无效参数设置不当容易外扩抓取HTTrack图形化镜像工具Windows 桌面操作、交互式配置、一次性镜像自动化程度低路径改写规则有时过于粗暴难嵌入流水线浏览器扩展在浏览器内保存页面单页保存、携带登录态的小规模下载不做全站递归不处理深层链接大站基本用不上从实际场景看这三类需求最常见站点归档把线上内容完整保存下来、迁移测试复制一份到本地做改版预览、离线展示内网环境无法访问外网时提供浏览能力。wget 对前两者最合适因为它能脚本化、能增量同步、能精确控制资源范围HTTrack 适合习惯图形界面的 Windows 用户浏览器扩展只适合临时存一两个页面想靠它完整复制一个几百页的站点基本是给自己找麻烦。选型还有一个关键判断目标站点是静态渲染还是动态渲染。所谓静态渲染就是服务端把 HTML 拼好返回浏览器拿到就能展示动态渲染则是指页面结构靠 JS 在浏览器里生成服务端返回的 HTML 只是一个空壳。wget 对前者几乎完美对后者只能抓到空壳。判断方法在第 3 章会展开这里先记住结论动手之前先 curl 一下首页源码看目标 HTML 里是不是有实际内容这一步能省掉后面大量返工。2.2 一条能直接跑的 wget 整站命令每个参数都拆开讲以一份内部文档站为例完整抓取命令我一般这样写wget \ --mirror \ --page-requisites \ --adjust-extension \ --convert-links \ --restrict-file-nameswindows \ --domains docs.example.com,static.example.com \ --span-hosts \ --no-parent \ --wait2 \ --random-wait \ --user-agentMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36 \ --directory-prefix./site_backup \ https://docs.example.com/先解释最核心的几个。--mirror是镜像模式的开关等价于同时开启递归、时间戳比对和无限层级它保证了第一次全量抓取后后续同步时能按文件时间差做增量而不是从头再抓一遍。--page-requisites会把页面依赖的 CSS、JS、图片、字体一并下载整站复制时这个参数必须带否则得到的只是一个“纯 HTML 骨架”。--adjust-extension会把没有扩展名的动态 URL 补上 .html比如/article?id123存成本地文件时自动变成.html方便本地双击打开。--convert-links是抓完后的链接改写开关wget 会自动把页面里的绝对地址改写成相对地址这一步决定你复制出来的站能不能离线浏览但它有盲区第 3 章专门讲。然后是防出错的关键参数。--restrict-file-nameswindows表示文件名严格按 Windows 兼容规则处理把?、、:等非法字符替换成下划线。别以为只有 Windows 需要在 Linux 上打包转交给别人时经常会传到 Windows 环境提前限制能避免解压后一堆文件名非法。--domains指定允许抓取的域名白名单多个域名用逗号分隔--span-hosts则允许跨域抓取。这两个参数必须要配合使用只开--span-hosts不限制域名会把页面里引用的所有外站资源全部拉回来只限--domains不开--span-hosts则静态资源如果放在独立 CDN 域名下就会全部漏抓。--no-parent阻止向目标 URL 的上级目录递归防止把整台服务器能访问到的内容都拖下来。防反爬相关的参数同样重要。--wait2表示每次请求之间至少间隔 2 秒--random-wait会在 0.5 到 2 倍的间隔之间随机波动模拟人工浏览节奏避免因为请求频率太高被服务端限流。--user-agent把请求 UA 伪装成常规浏览器不少站点会拦截无 UA 或明显是爬虫的请求。最后--directory-prefix指定本地保存根目录抓下来的文件会按域名建目录./site_backup/docs.example.com/就是站点根目录。2.3 增量续传与定时同步让镜像站持续跟上源站如果你的诉求不是一次性抓完而是每周、每天和源站保持同步那就要把上面的命令包成一个脚本配合增量参数做定时任务。#!/bin/bash SITEhttps://docs.example.com DEST/data/backup/docs_site wget --mirror --page-requisites --adjust-extension \ --convert-links --restrict-file-nameswindows \ --domains docs.example.com,static.example.com \ --span-hosts --no-parent --wait2 --random-wait \ --directory-prefix$DEST $SITE这段脚本的核心是--mirror它内置了-N时间戳比对逻辑本地文件时间戳比源站新就跳过比源站旧就重新下载。配合 Linux 的 crontab 就能形成自动同步链路比如每天凌晨三点执行0 3 * * * /opt/scripts/wget_sync.sh /var/log/wget_sync.log 21这里有一个资深用户才会踩到的坑部分服务器响应头里不带 Last-Modified或者服务器时钟严重不准导致--mirror每次都觉得本地文件“过期”增量同步变成全量重抓。解决方法是给 wget 加上--no-use-server-timestamps让本地文件时间戳不被服务器响应头覆盖之后比对就始终以第一次抓取的本地时间为准。代价是源站后续更新不会被自动发现所以这个参数更适合源站内容基本稳定、只需要补漏的场景。首次全量抓取建议先手动跑一遍同时开着日志观察确认没有大面积 403 或超时后再交给 cron。3. 路径改写与资源本地化抓完打不开才是第一道坎很多同学第一次做整站下载wget 跑完看到几万个文件觉得大功告成双击 index.html 却看到一堆裂图和白板。问题几乎都出在链接改写和资源本地化上。这一章把--convert-links的能力边界、手动改写的时机、以及动态渲染站点的识别与处理讲清楚。3.1 --convert-links 做了什么又漏掉了什么--convert-links的工作机制是wget 抓完所有资源后会遍历下载下来的 HTML 和 CSS把其中指向源站 URL 的 href、src、url() 改写成指向本地文件的相对路径同时保留一份原始文件后缀是.orig。比如源站页面里有一个a hrefhttps://docs.example.com/guide/start改写后会变成a hrefguide/start.html。当你打包这些文件时.orig文件应该被排除掉它们只是改写的备份留着会让目录体积翻倍且没有任何运行时价值。但--convert-links的覆盖范围远没有想象中广。它只处理 wget 在抓取阶段“认识”的链接也就是说只有 HTML 源码里直接写死的 href、src 才会被改写。以下几个场景它完全管不着第一种是 JavaScript 里动态拼接的 URL比如代码里写const api /api/v1/data然后 fetch 请求这种路径在 HTML 里不存在wget 也看不到改不了。第二种是懒加载图片的>grep -rhoE https?://[a-zA-Z0-9.\-] ./site_backup --include*.html --include*.css \ | sort | uniq -c | sort -rn这条命令递归提取 HTML 和 CSS 里所有 HTTP/HTTPS 链接的域名部分按出现次数排序。输出结果里出现次数最多的域名就是当前页面里最主要的资源来源。如果它已经在--domains白名单里且资源已抓取只是链接没改写那么直接用 sed 把源站域名替换成根相对路径即可注意用|作为分隔符避免和路径里的/冲突find ./site_backup -type f \( -name *.html -o -name *.css \) \ -exec sed -i s|https://docs\.example\.com/|/|g {} 这条命令会把 HTML 和 CSS 里硬编码的源站绝对路径改写成根相对路径。改完以后页面里的/guide/start.html会直接落在本地站点根目录下。但这里有一条必须遵守的纪律不要对第三方 CDN 域名做同样的替换。比如站点用到了阿里云 OSS 上的图片你本地并没有这些图片强行把https://cdn.oss.example.com/改成/结果就是所有图片从“远程加载失败”变成“本地不存在的资源 404”比不改还糟。正确的做法是源站域名改成根相对路径CDN 域名保持原样让离线预览时仍能访问公开 CDN 的资源。sed 批量改写前我强烈建议先备份目录哪怕只是cp -r site_backup site_backup.bak。改写出错不会立刻暴露往往是浏览到第三四个页面才发现问题如果没有备份后悔药都没得吃。3.3 动态渲染站点抓下来只有空壳怎么识别与处理wget 递归抓取对 SPA 站点基本是无效的但很多人是在抓完以后才意识到这点。判断方法很简单抓之前先用 curl 看目标 URL 返回的 HTML 里是否真的有页面内容curl -sL https://app.example.com/ | grep -oE div[^]*id(root|app)[^]*如果输出结果里能匹配到idroot或idapp这样的节点而且节点内部没有任何实际文本内容那这基本就是一个 React/Vue 单页应用服务端返回的只是空壳。此时 wget 抓下来的 HTML 文件数量可能很多但每个文件都只有几十到几百字节没有任何正文。应对这类站点有两个路线。第一个是放弃抓 HTML直接抓页面背后调用的 JSON 接口用接口数据重建内容这适合内容型站点第 6 章会展开讲接口归档方法。第二个是用无头浏览器渲染后再抓取具体做法是让浏览器加载页面、执行完 JS、把渲染后的完整 DOM 保存成静态 HTML这条路能拿到真实内容代价是每个页面都要等渲染完成抓几千个页面的耗时和资源消耗都很大更适合小规模高价值页面。另一个容易被忽略的方向是站点提供 sitemap.xml。很多动态站点服务端渲染能力很差但 sitemap 是完整且准确的 URL 清单把 sitemap 里的链接作为种子 URL 喂给 wget可以绕过爬虫递归不到链接的问题curl -s https://app.example.com/sitemap.xml | grep -oE loc[^]/loc | sed s/\/\?loc//g /tmp/urls.txt wget --input-file/tmp/urls.txt --force-html --page-requisites --convert-links --directory-prefix./spa_backup这样抓到的是每个 URL 的服务端响应内容。如果响应里包含完整内容这个方案可行如果响应依旧是空壳那必须在抓取环节就引入无头浏览器后续第 6 章讨论的接口直连归档会是更务实的替代方案。4. 整站复制避坑指南五个高频翻车现场与排查顺序这一章记录的是过去几年我在做整站抓取时遇到的高频问题每一条都是真实翻车经历按“现象 → 原因 → 解决”的方式写。如果你抓完的站点有问题优先对照这几条排查。4.1 只抓到首页没有子页面现象本地备份里只有一个 index.html没有子目录HTML 文件总数是个位数整个站点看起来就像一个空壳。原因有三个。第一wget 默认遵守 robots.txt如果站点在 robots 协议里禁止了子路径爬取wget 会主动跳过。第二--level参数默认值是 5如果站点链接层级深很多子页面在第 5 层之下就抓不到了。第三站点页面里的导航链接是 JS 动态生成的wget 的解析器根本看不到这些链接递归就此中断。解决如果目标站授权你做整站归档可以追加-e robotsoff关闭 robots 解析同时把层级限制放开用--levelinf或直接依赖--mirror内置的无限层级如果问题出在动态链接上改用 sitemap.xml 做种子 URL把有效链接一次性喂给 wget绕过递归审理。sitemap 种子抓法在第 3 章已经给出过命令这里不再重复。4.2 图片全裂样式全丢现象页面能打开结构也在但所有图片位置都是裂图CSS 完全没有作用。打开本地目录却发现 CSS 文件存在图片也存在就是路径不对。原因源站把静态资源放在了独立域名下且 HTML 里写的是带域名的绝对路径。wget 抓取时虽然把资源下载下来了但--convert-links没有把这些跨域绝对路径改写成相对路径或者改写规则不满足当前目录层级。另一种常见情况是防盗链图片请求带了错误的 Referer 头服务端返回 403本地落地的图片文件全是 0 字节。解决先用第 3 章的 grep 统计域名命令确认资源实际来源于哪些域名。如果资源已抓到用 sed 把源站域名替换成根相对路径如果资源没抓到把对应域名追加到--domains白名单重新抓取。对于防盗链wget 抓取时加 Referer 头伪装来源页码wget --mirror --page-requisites --convert-links \ --refererhttps://docs.example.com/ \ --domains docs.example.com,static.example.com \ --directory-prefix./site_backup \ https://docs.example.com/抓完检查 0 字节文件是最快的验证手段find命令见第 5 章。4.3 页面返回 403 或频繁断连现象抓取过程中大量请求返回 403或者连接在抓到一半时突然中断重跑还是同样位置失败。原因最常见的是两个——请求 UA 被服务端识别为非浏览器以及请求频率太高触发了限流。wget 默认 UA 是Wget/x.x.x几乎所有带基础防护的站点都会拦这串标识。另外并发参数太高时短时间内的密集请求极易触发 IP 级别的临时封禁。解决给 wget 设置完整的浏览器 UA同时加上请求间隔和重试限制。间隔参数前面已经讲过重试方面追加--tries3 --retry-connrefused让断连时自动重试。如果站点防护严格把--wait从 2 秒提高到 5 秒宁可抓得慢也不要触发封禁。还有一点容易被忽略--tries设得太高配合--wait太短反而会放大被限流的概率因为重试本身也是高并发请求。4.4 中文乱码与编码混乱现象抓下来的 HTML 在浏览器里显示乱码或者页面文件名乱码链接点进去 404。原因源站返回的 Content-Type 声明的字符集与实际内容编码不一致。比如内容实际是 GBK服务器却声明了 UTF-8wget 在抓取时按服务器声明解析导致链接改写阶段解析出错文件名和链接就全乱了。这种情况在国内老系统上格外常见属于“技术债”重灾区。解决先确认文件真实编码再批量转码。用file命令抽查一批 HTML 文件file -i $(find ./site_backup -name *.html | head -20)输出里会显示每个文件的charset信息。如果确认是 GBK手动转码for f in $(find ./site_backup -name *.html); do iconv -f GBK -t UTF-8 $f $f.tmp mv $f.tmp $f done这条命令把每个 GBK 编码的 HTML 转成 UTF-8 并原地覆盖。前提是你已经确认文件确实是 GBK如果源文件本来就是 UTF-8用-f GBK强制转码会产生二次乱码。所以先 file 抽查再动手这个顺序不能乱。4.5 抓回来一大片外部域名内容现象站点备份目录里除了目标站点还出现了 cdn.example.org、fonts.example.net、img.example.co 等一堆目录体积膨胀了好几倍很多内容根本与目标站无关。原因--span-hosts把跨域资源也抓下来了但--domains白名单没有同步配置或者白名单写错域名导致部分第三方域不受控。--span-hosts的本意是允许抓取页面上引用的外部资源但加了它却不加白名单等于允许抓取所有域名。解决抓取命令里必须给--domains指定明确的白名单只放行目标站和确实承载静态资源的已知域名。如果已经抓完且混入了外部域名先识别再清理find ./site_backup -maxdepth 1 -mindepth 1 -type d \ ! -name docs.example.com ! -name static.example.com \ -exec rm -rf {} 这条命令删除站点根目录下不属于白名单的目录。执行前先确认目录名确实是对应外部域名千万不要把主站目录误删了。5. 把站点本地化跑通静态服务器、路由策略与完整性验证资源抓完、链接改好只是静态文件的准备工作。真正能打开浏览还要在本地起一个服务环境。这一章解决三个问题本地静态服务怎么起、history 路由白屏怎么兜底、以及怎么验证抓取是否完整。5.1 本地起静态服务一个命令启动注意 Base 路径如果你的站点是纯静态页面且--convert-links已经把链接改成相对路径最简单的浏览方式是用协议头file://直接双击 HTML。但这里有一个明显问题浏览器对file://协议下的 AJAX 请求有限制而且如果页面里有fetch(data.json)这类相对请求file://下大概率直接失败。所以靠谱的做法是起一个本地 HTTP 服务。Python 自带的方式最简单cd /path/to/site_backup/docs.example.com python3 -m http.server 8080 --bind 127.0.0.1--bind 127.0.0.1表示只在本机访问适合离线预览如果想要局域网内其他设备也能访问把 bind 地址改成0.0.0.0。这里有一个反复踩坑的地方cd进的目录必须是站点根目录也就是备份目录里以域名为名字的那层比如/backup/docs.example.com而不是/backup否则根相对路径/assets/style.css会找不到文件。如果页面里大量使用根相对路径服务根目录就必须和路径根对齐。如果用的是 Node 环境npx serve也能达到同样效果但它不是 Python 那种“当前目录就是根目录”的逻辑默认根目录是执行命令的目录。两种方式选一个就行不建议混用否则容易搞混服务的实际根路径。5.2 路由策略hash 路由能打开history 路由白屏的兜底方案这一步是区分前端开发和纯运维经验的关键点。如果目标站点用的是 hash 路由URL 长这样/#/user/list那么静态服务器几乎不用做任何处理因为#后面的路径是浏览器端解析的HTTP 服务器拿到的请求永远是首页路径所有路由切换都在客户端 JS 里完成本地浏览没有任何障碍。如果是 history 路由URL 长这样/user/list情况就变了。当你直接访问本地服务器的/user/list时Python 的 http.server 会去找user/list对应的物理文件但本地文件系统里根本没有这个路径于是返回 404。这就是典型的“首页能打开一刷新或手输地址就白屏”。解决 history 路由白屏的兜底方案是把所有未命中的路径统一回退到index.html让前端路由接管。用 nginx 做本地服务时配置如下server { listen 8080; server_name 127.0.0.1; root /path/to/site_backup/docs.example.com; location / { try_files $uri $uri/ /index.html; } }try_files的匹配顺序是先找真实的$uri文件找不到就找$uri目录目录也不存在就统一返回/index.html这样前端路由就能接管所有未命中路径。没有 nginx 时用 Node 的serve带-s参数也能实现同样的 fallbacknpx serve -s ./site_backup/docs.example.com -l 8080-s是 single-page 模式行为等价于上面那段 nginx 配置。需要注意的是如果站点原本就有子路径部署比如线上部署在/docs/下本地 fallback 也要对应加上前缀否则资源路径仍然对不上。5.3 完整性自查用脚本统计资源缺口抓完以后不能直接归档我一般会跑一轮自查脚本核心是统计 HTML 数量、检查 0 字节文件、看文件类型分布是否合理。echo HTML: $(find ./site_backup -name *.html | wc -l) echo CSS: $(find ./site_backup -name *.css | wc -l) echo JS: $(find ./site_backup -name *.js | wc -l) echo Zero-byte files: $(find ./site_backup -type f -size 0 | wc -l) echo Top file types: find ./site_backup -type f | sed s/.*\.// | sort | uniq -c | sort -rn | head -10前四行分别统计 HTML、CSS、JS 和 0 字节文件数量。0 字节文件数量不为 0 时直接指向两种可能请求被服务端拒绝或者源站返回了空内容这在防盗链和第 4.2 节的问题里最常见。Top file types 那一段输出的是文件类型分布可以用来快速判断抓取是否有明显缺口——比如一个正常的文档站图片数量和 HTML 数量至少是同一量级如果 HTML 有几百个而图片只有个位数说明图片资源大概率在抓取阶段被遗漏了。数量统计之外还要抽查页面是否能正常打开。启动本地服务后从首页里提取几个真实链接用 curl 验证本地响应状态for u in $(grep -oE href[^]*\.html ./site_backup/docs.example.com/index.html \ | sed s/href//;s/// | head -5); do code$(curl -s -o /dev/null -w %{http_code} http://127.0.0.1:8080$u) echo $u - $code done这段脚本从首页的 HTML 里提取 .html 链接拼上本地服务地址请求。如果输出里出现 404说明链接改写或文件组织还有问题。注意 sed 提取出来的链接如果是相对路径拼接时要以根路径为基准确保 URL 路径与本地目录结构一致。抽查三个页面就够了重点是确认“链接编写正确 资源文件存在”这两件事同时成立。6. 带数据的整站抓取登录态、接口归档与抓后自查习惯前面的章节默认抓取的是公开可访问页面但现实里经常遇到需要登录才能看的站点以及纯前端渲染、必须抓接口才能拿到数据的场景。这一章是进阶操作核心是把登录态和接口数据这两块补上再沉淀一个抓后自查的固定习惯。6.1 带 cookie 抓取登录后才能访问的页面很多站点公开首页可以访问但文档详情、后台页面需要登录。wget 支持通过--load-cookies加载浏览器导出的 cookie 文件文件格式要求是 Netscape 格式。主流浏览器插件都能一键导出导出后保存为 cookies.txt 再执行wget --mirror --page-requisites --convert-links \ --load-cookiescookies.txt \ --keep-session-cookies \ --domains docs.example.com,static.example.com \ --directory-prefix./site_backup \ https://docs.example.com/注意 cookie 文件一旦过期抓取就会在登录墙处停止不会报错只是抓下来的页面数量明显变少。所以抓完以后必须回来看 HTML 文件数量是否合理这是判断登录态是否失效最直接的方式。6.2 接口数据直连归档用 curl 按分页拉 JSON对于纯前端渲染的站点直接抓 HTML 得到的是空壳。更务实的做法是抓它背后的数据接口把 JSON 按分页落盘后续直接用 JSON 重建页面。常见接口是分页参数加页码循环拉取即可for i in $(seq 1 20); do curl -s https://api.example.com/v1/items?page$ipage_size50 \ -H Cookie: SESSIONxxx \ -H Accept: application/json \ -o ./data/page_$i.json sleep 1 doneseq 1 20表示拉取前 20 页每页 50 条共 1000 条数据-H传入认证头和 Cookie-o指定输出文件。这里不建议直接改 wget 抓接口因为 JSON 接口的请求头更复杂curl 控制更细腻。拉完以后检查每个 JSON 文件大小如果某页小于 1KB大概率是接口返回了错误信息而不是数据。6.3 抓后的安全与归档习惯先验证再离线保存归档前有一个容易被忽视的安全点抓下来的 HTML 里可能包含用户个人信息或者接口 JSON 里包含内网 IP、敏感 token直接打包交给别人会有泄露风险。我现在的习惯是归档前先跑一次关键词扫描把邮箱、手机号、token 类字段过滤掉再打包。从那以后我每次做整站下载都会强制走一遍同样的流程先用 curl 判断目标站是否动态渲染再按渲染类型选抓 HTML 还是抓接口抓完后跑 0 字节检查和文件类型分布统计最后启动本地服务抽查三个真实页面。这套流程看起来多花十分钟但能挡掉大部分返工——有一回抓完整个站发现字体子集化文件全是 0 字节几百个页面的排版和字体全崩了如果当时直接归档交付出去就是一次事故。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

SQL批量修改表字段类型实战:用TaoToken辅助生成varchar转nvarchar脚本

SQL批量修改表字段类型实战:用TaoToken辅助生成varchar转nvarchar脚本

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

2026/10/11 11:44:14 阅读更多 →
单片机毕设选题推荐:基于蓝牙的便携式室内烟雾一氧化碳检测报警装置设计 基于 WiFi 的仓库温湿度烟雾远程监测与排风控制系统设计(030122)

单片机毕设选题推荐:基于蓝牙的便携式室内烟雾一氧化碳检测报警装置设计 基于 WiFi 的仓库温湿度烟雾远程监测与排风控制系统设计(030122)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/10/11 11:44:14 阅读更多 →
校园舆情管理系统:从事件识别到工单闭环的轻量级实践

校园舆情管理系统:从事件识别到工单闭环的轻量级实践

简介:这是一套面向计算机专业本科生的毕业设计实战项目,聚焦校园舆情监测与预警场景,基于Python全栈技术栈实现可运行的管理系统。资源包含完整源码、MySQL数据库脚本、系统演示视频及配套文档,覆盖用户管理、微博爬虫&#xff08…

2026/10/11 11:44:14 阅读更多 →

最新新闻

汉字简繁转换映射表:数据建模、SQL导入与避坑指南

汉字简繁转换映射表:数据建模、SQL导入与避坑指南

简介:这是一套提供约4792条汉字简体与繁体映射关系的参照数据库,覆盖常见高频用字,面向需要实现简繁转换、多语言支持或汉字文本处理的开发人员、数据挖掘与语言研究者,可直接用于软件界面切换、语料预处理及汉字演变研究。压缩包…

2026/10/11 12:38:30 阅读更多 →
Atomic Chat Launch页面实战:一键配置Claude Code、Codex等10+编程Agent跑本地模型

Atomic Chat Launch页面实战:一键配置Claude Code、Codex等10+编程Agent跑本地模型

【免费下载链接】Atomic-Chat Local AI app and inference engine for agents. Run open-weight LLMs locally — private, 100% offline on your computer. Join our Discord: https://discord.com/invite/8wGSsvmg4V 项目地址: https://gitcode.com/gh_mirrors/at…

2026/10/11 12:38:30 阅读更多 →
REA建模实战:用资源、事件、参与方重塑业务数据与对账逻辑

REA建模实战:用资源、事件、参与方重塑业务数据与对账逻辑

1. 我们为什么需要REA:从“流水表永远对不上”说起1.1 传统表结构设计的三个隐藏债务先说个大多数做业务系统的朋友都经历过的场景。某天运营拿着手机走过来,说后台统计的库存和仓库实际盘点差了几百件,订单表里明明扣了库存,流水…

2026/10/11 12:38:30 阅读更多 →
Astro 内容集合的符号链接支持:用 Symlink 跨越目录边界组织内容,及源码级解析原理

Astro 内容集合的符号链接支持:用 Symlink 跨越目录边界组织内容,及源码级解析原理

前端Web框架SSR前端构建 【免费下载链接】astro The web framework for content-driven websites. 项目地址: https://gitcode.com/GitHub_Trending/as/astro 点击查看 免费下载 本篇技术指南聚焦于 Astro 内容集合(Content Collections)对*…

2026/10/11 12:38:30 阅读更多 →
Foxmail_chs7绿色版邮件自动化实战指南

Foxmail_chs7绿色版邮件自动化实战指南

简介:这是一份面向办公人员、IT支持工程师及多设备使用者的便携式邮件管理工具——Foxmail 7 中文绿色免安装版,解决用户在不同电脑间快速部署邮箱客户端、避免系统注册表污染与安装冲突的痛点。资源压缩包为 ZIP 格式,共含 640 个文件&#…

2026/10/11 12:38:30 阅读更多 →
Python爬虫实战:大众点评评论抓取、数据清洗与消费分析报告

Python爬虫实战:大众点评评论抓取、数据清洗与消费分析报告

简介:这份资源面向计算机相关专业学生与开发者,提供一套完整的大众点评评论采集与消费分析实战项目,可作为毕业设计、课程设计或技术研究的参考案例。项目包含爬虫源码、数据清洗脚本与消费分析报告,覆盖从评论抓取、图片采集到数…

2026/10/11 12:37:30 阅读更多 →

日新闻

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

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

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

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

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

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

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

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

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

2026/10/11 0:00:27 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 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/11 10:45:37 阅读更多 →
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/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练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/10 10:38:42 阅读更多 →