告别复制粘贴:SiYuan网页剪藏全攻略

告别复制粘贴:SiYuan网页剪藏全攻略

【免费下载链接】siyuanA privacy-first, self-hosted, fully open source personal knowledge management software, written in typescript and golang. 项目地址: https://gitcode.com/GitHub_Trending/si/siyuan

你是否还在为网页内容保存不完整、格式错乱而烦恼?作为一款隐私优先的个人知识管理软件,SiYuan(思源笔记)提供的网页剪藏功能彻底解决了这一痛点。本文将带你掌握从安装配置到高级剪辑的全流程,让网页知识收集效率提升10倍。

为什么选择SiYuan剪藏

传统网页保存方式存在三大痛点:格式丢失、链接失效、管理混乱。SiYuan作为开源知识管理工具(GitHub_Trending/si/siyuan),通过深度整合的剪藏功能实现了三大突破:

  • 原格式保留:完整保存网页排版、图片和表格,避免Markdown转换丢失
  • 双向链接:自动建立剪藏内容与源网页的关联,支持后续回溯
  • 块级管理:剪藏内容可拆分为独立知识块,便于碎片化重组
技术实现:SiYuan通过自研的块级文档模型(Block Model)和kernel/api/clipboard.go处理剪贴板数据,结合app/src/protyle/util/paste.ts实现富文本解析,确保内容无损转换。

准备工作:5分钟快速配置

安装剪藏扩展

SiYuan提供浏览器扩展实现一键剪藏,支持Chrome/Edge等基于Chromium的浏览器:

  1. 官方仓库下载扩展包
  2. 在浏览器地址栏输入chrome://extensions/进入扩展管理
  3. 开启"开发者模式",拖拽扩展包到页面完成安装

配置剪藏目标

通过SiYuan的设置界面配置剪藏内容的默认存储位置:

  1. 打开SiYuan,进入设置 > 编辑器 > 网页剪藏
  2. 设置默认笔记本和文件夹路径(建议使用/剪藏/{{domain}}/{{date}}格式)
  3. 选择剪藏格式选项:完整HTML/纯文本/Markdown

配置文件路径:剪藏规则保存在工作空间的conf/appearance.json中,可通过API_zh_CN.md提供的接口进行批量配置。

三种剪藏方式全解析

1. 一键剪藏整个页面

适用于需要完整保存文章、教程等内容的场景:

  1. 浏览目标网页,点击浏览器工具栏的SiYuan图标
  2. 在弹出面板选择"完整页面"模式
  3. 等待3-5秒处理后自动跳转到剪藏结果页

技术原理:扩展通过chrome.tabs.captureVisibleTab()获取页面截图,同时使用document.execCommand('copy')复制完整DOM结构,通过自定义协议siyuan://clipboard传输到客户端。

2. 选区剪藏精准提取

针对只需部分内容的场景,实现精准知识截取:

  1. 按住鼠标选中网页中的目标内容(支持跨段落选择)
  2. 右键选择"SiYuan剪藏" > "选区内容"
  3. 可选设置标签和备注,点击确认完成剪藏

代码示例:选区剪藏的核心处理逻辑

// 简化自app/src/protyle/util/paste.ts async function handleSelectionClipboard() { const selection = window.getSelection(); if (!selection.rangeCount) return; const range = selection.getRangeAt(0); const fragment = range.cloneContents(); // 创建临时容器处理选中内容 const tempDiv = document.createElement('div'); tempDiv.appendChild(fragment); // 处理图片和相对链接 await fixRelativeResources(tempDiv); // 通过IPC发送到主进程 window.api.send('clipboard:html', tempDiv.innerHTML); } 

3. 静默剪藏后台处理

适合需要批量保存多个页面的场景,不打断浏览流程:

  1. 在剪藏面板勾选"后台剪藏"选项
  2. 继续浏览其他网页,剪藏任务将在后台处理
  3. 所有剪藏完成后会收到系统通知
提示:可在SiYuan的设置 > 通知中配置剪藏完成提醒方式,支持系统通知和桌面通知两种模式。

剪藏内容的高效管理

内容去重与整理

SiYuan提供智能去重功能,避免重复剪藏相同内容:

  1. 剪藏时自动检测相似内容(基于SimHash算法)
  2. 提供"跳过/覆盖/另存为"三种处理方案
  3. 支持按域名、日期等维度批量管理剪藏内容

高级编辑技巧

利用SiYuan的块编辑能力优化剪藏内容:

  • 拆分块:使用Ctrl+Shift+D将长文本拆分为逻辑段落
  • 标注重点:选中文字后按Ctrl+B添加高亮标记
  • 关联知识:通过[[插入内部链接,建立知识网络

快捷键参考:完整的编辑快捷键列表可在app/guide/目录下的帮助文档中查看。

常见问题解决方案

剪藏失败排查流程

当剪藏功能异常时,可按以下步骤诊断:

  1. 检查浏览器扩展是否最新版本
  2. 确认SiYuan主程序正在运行(剪藏依赖内核服务)
  3. 查看工作空间logs/目录下的clipboard.log定位错误

格式错乱修复

若剪藏内容出现格式问题,可尝试:

  • 使用"纯文本模式"重新剪藏
  • 在编辑界面执行"清理格式"命令(Ctrl+Shift+V
  • 手动调整CSS样式(通过块属性面板添加自定义样式)

批量处理脚本

对于大量历史剪藏内容,可通过SiYuan的API编写处理脚本:

# 使用SiYuan API批量更新剪藏标签 import requests API_TOKEN = "your_token_here" BASE_URL = "http://127.0.0.1:6806/api" headers = { "Authorization": f"Token {API_TOKEN}", "Content-Type": "application/json" } # 获取所有剪藏文档 response = requests.post(f"{BASE_URL}/filetree/lsNotebooks", headers=headers) notebooks = response.json()["data"]["notebooks"] # 批量添加标签 for notebook in notebooks: if "剪藏" in notebook["name"]: requests.post(f"{BASE_URL}/attr/setBlockAttrs", headers=headers, json={ "id": notebook["id"], "attrs": {"custom-tags": "web,clipboard"} } ) 

总结与进阶路线

通过本文学习,你已掌握SiYuan网页剪藏的核心技能。建议进一步探索:

  1. 自动化工作流:结合IFTTT实现RSS触发自动剪藏
  2. OCR增强:配置Tesseract实现图片内容识别(需安装插件)
  3. 模板定制:使用模板功能定义个性化剪藏格式
资源推荐:官方提供的剪藏示例库位于app/guide/20211226090932-5lcq56f,包含多种场景的最佳实践。

立即开始使用SiYuan剪藏,让网页知识真正成为你的个人知识库一部分。如有问题,可访问中文讨论区获取社区支持。

收藏本文,下次遇到优质网页时,你就知道该怎么做了!🚀

【免费下载链接】siyuanA privacy-first, self-hosted, fully open source personal knowledge management software, written in typescript and golang. 项目地址: https://gitcode.com/GitHub_Trending/si/siyuan

Read more

IDEA 中的 AI 编程插件怎么选?Copilot / 灵码 / TRAE 实际使用对比

IDEA 中的 AI 编程插件怎么选?Copilot / 灵码 / TRAE 实际使用对比

# 【不吹不黑】Java 开发者真实体验:IDEA 三大 AI 编程插件深度对比(Copilot / TRAE / 灵码) > 本文是一篇**技术交流与使用体验记录**,仅用于分享 Java 开发过程中使用 AI 插件的真实感受与效率提升方式,不涉及任何商业推广或广告行为。 *** ## 一、写在前面:为什么要写这篇文章 过去一年,大模型能力的跃迁,直接改变了开发者的工作方式。**AI 已经不再是“写 Demo 的玩具”,而是逐渐演变为 IDE 中的“第二大脑”** 。 本文的目的非常明确: *   记录一名 **Java 后端开发者** 在真实项目中使用 AI 插件的体验 *   对比不同插件在 **补全、对话、Agent 工作流** 等方面的差异 *   帮助开发者根据自身场景选择合适的工具,而不是盲目跟风 本文所有结论,

【AIGC】如何获取ChatGPT外部GPTs应用的提示词Prompt指令和知识库文件

【AIGC】如何获取ChatGPT外部GPTs应用的提示词Prompt指令和知识库文件

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳]本文专栏: AIGC |GPTs应用实例 文章目录 * 💯前言 * 💯获取GPTs的提示词Prompt指令 * 💯获取GPTs的知识库文件 * 💯小结 * 关于GPTs指令如何在ChatGPT上使用,请看这篇文章: 【AIGC】如何在ChatGPT中制作个性化GPTs应用详解     https://blog.ZEEKLOG.net/2201_75539691?type=blog * 关于如何使用国内AI工具复现类似GPTs效果,请看这篇文章: 【AIGC】国内AI工具复现GPTs效果详解     https://blog.ZEEKLOG.net/2201_75539691?type=blog 💯前言 随着 ChatGPT 和其他 AI 应用的不断发展,越来越多的外部 GPTs 被集成进来,以增强其功能和适应多样化的用户需求。这些外部 GPTs 并不仅仅是通用的 聊天助手,而是专为特定场景、

llama.cpp Vulkan后端在AMD显卡上的完整部署指南:从问题诊断到性能优化

llama.cpp Vulkan后端在AMD显卡上的完整部署指南:从问题诊断到性能优化 【免费下载链接】llama.cppPort of Facebook's LLaMA model in C/C++ 项目地址: https://gitcode.com/GitHub_Trending/ll/llama.cpp 想要在AMD显卡上流畅运行llama.cpp却频频遭遇Vulkan初始化失败?本指南将带你系统解决兼容性问题,实现高效的大语言模型本地化部署。llama.cpp作为C/C++实现的高性能大语言模型推理框架,通过Vulkan后端可以显著提升GPU加速效果,但在AMD平台上的特殊配置需求往往让新手望而却步。 问题快速诊断方法 常见故障症状识别 当你遇到以下任一情况时,很可能遇到了AMD显卡与Vulkan后端的兼容性问题: * 启动崩溃:程序启动时立即崩溃,日志显示"vkCreateInstance failed" * 加载卡顿:模型加载进度卡在"Initializing

论文阅读-RGMP: Recurrent Geometric-prior Multimodal Policy for Generalizable Humanoid Robot Manipulation

目录 1. 论文概要 1.1 题目 1.2 作者 1.3作者单位及邮箱 1.4 摘要 2.研究问题 2.1研究问题1 2.2研究问题2 3.主要贡献 3.1提出GSS(Geometric‑priorSkillSelector) 3.2提出ARGN(Adaptive Rotation‑basedGaussianNetworkforvisuomotorcontrol) 3.3综合真实机器人评估 4.研究方法 4.1 GSS (Geometric-prior Skill Selector) 4.1.1动机(Motivation) 4.1.2GSS的两个阶段 4.1.