思源数据库功能现在提供了 API 吗?

想做个 rss 插件把 youtube、b 站、抖音订阅的数据抓下来存到思源数据库里,不过看了下官网 api 文档没找到相关的 api,这个有开发的安排计划吗?

=================================

开发好了,还不错,刷抖音不用一页页翻页了,页面直接播放,唯一的问题是往思源批量写数据的时候有点卡顿,尤其是大批量入库的时候,现在插入一条数据要调用五六次接口,希望版本快点更新

image.png

image.png

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19772 引用 • 75629 回帖 • 1 关注
2 操作
coriger 在 2024-06-01 11:14:12 更新了该帖
coriger 在 2024-06-01 11:04:14 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250

    目前已经有非正式发布的内部 API 支持数据库相关操作,比如添加/删除/排序数据库字段、获取所有字段、添加/删除/更新数据库字段值等,具体请参考 kernel/api/router.go 和 av.go 源文件。

    等这些 API 逐步稳定以后再编入文档,请关注 Issue #11130 · siyuan-note/siyuan

    1 回复
  • coriger
    作者

    好像没看到往数据库插数据的接口哦

    1 回复
  • rss 插件我写了一个惹,支持自定义 js 代码运行

    https://github.com/2234839/feed_siyuan_plugin

    2 回复
  • addAttributeViewValues

    3 回复
  • coriger
    作者

    image.png

    数据库的 avId 只能在 f12 找到吗,之前一直用右键复制出来的 id 调用接口,才发现是 nodeId,我说这个数据怎么都取不到

    1 回复
  • coriger
    作者

    image.png

    image.png

    这个接口我想要同时插入其他几个字段的值要怎么传参,源码看的不是很明白,只看到 id/isDetached/content 这三个字段

    1 回复
  • coriger
    作者

    刚试了下 setAttributeViewBlockAttr 这个接口,难道只能通过这个接口一个个更新字段值?

    image.png

  • coriger
    作者

    b 站和抖音的 rss 源不稳定,之前拿 rsshub 二次开发本地起了个服务,不过太笨重了,现在直接写个浏览器插件劫持 api 拿报文数据,数据现在已经走通了,就差写入思源数据库了

  • 可以试试 searchAttributeView 搜索接口。

  • coriger
    作者

    而且 rsshub 里面去解析抖音这些网站要处理反作弊机制,很麻烦,浏览器里面搞省心,rsshub 里面大多数源都用不上,还是自己定制开发比较自由

  • 只能先用这个接口插入行,然后用 setAttributeViewBlockAttr 更新字段,目前只能一个值一个值更新。

    后续我们考虑一下提供创建时更新所有值的接口,谢谢。

    1 回复
  • coriger
    作者

    好的

    1 回复
  • coriger
    作者

    还有个问题,就是我针对状态这个字段进行更新,表里【源数据】这个是模版字段的内容,它会自动刷新一下,有些卡顿,但这个模版字段并不依赖状态这个字段,这个可以优化吗?

    image.png

    1 回复
  • coriger
    作者

    尤其是我一边看视频一遍在边上的备注框做笔记的时候,每次写完笔记页面就自动刷新,会中断视频播放image.png

  • 数据库目前是整个 DOM 刷新一次的,还没做到对单个条目刷新,所以就会这样

    关联:Issue #11612 · siyuan-note/siyuan

    哦,这个还是有点影响体验,它这个应该也是怕模版字段有依赖才强刷吧,不然局部更新其实没必要刷
    coriger
  • qiancang 3 评论

    调用接口往数据库里添加内容是比较慢的,比较快的做法是直接生成数据库的 json 文件,然后将这个数据库插入到文档中,可以参考这个 quicker 动作:表格文件转思源数据库 - by 浅沧 - 动作信息 - Quicker (getquicker.net)

    注意,往 av 文件夹里写文件的时候建议使用 putfile api,不然可能与思源内核产生读写冲突。

    嗯,昨天看了你这个脚本的实现,不过我这边是用浏览器插件实现,没法直接操作本地文件,除非我单独起一个服务中转下,搞得有点麻烦,还是等版本更新提供批量入库的接口,除非是要全量拉取,如果只是做增量入库请求量并不多,我前端入口再做下判断就好
    coriger
    @coriger putfile 不需要操作本地文件,是给思源 kernel 发文本就行,读写是由内核完成的。
    qiancang
    哦,好,我去看看
    coriger
  • coriger 1 赞同
    作者

    把视频搞成画中画,编辑的时候倒是不影响视频播放了,可以凑合的用

    image.png

  • 很多学习用户 也有非常强烈的 视频笔记需求

    • 快速把多平台视频 下载下来(或者支持在线学习 b 站 youtube, 抖音视频,更方便的是支持百度网盘阿里云盘的在线视频, 这样减少本地视频存储占用大量 笔记本电脑的空间问题)
    • 笔记软件内 观看视频的同时, 可以快速通过笔记 加时间戳 和 截图
    • 快速把视频的字幕拉下来
    • 用 ai 对视频字幕进行总结摘要和提问

    如果有哪位开发者提供思源类似的插件

    • 功德无量,愿意付费支持
请输入回帖内容 ...

推荐标签 标签

  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖 • 3 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 57 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 606 关注
  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 530 关注
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    28 引用 • 108 回帖
  • 分享

    有什么新发现就分享给大家吧!

    244 引用 • 1762 回帖
  • 导航

    各种网址链接、内容导航。

    37 引用 • 168 回帖
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    324 引用 • 1395 回帖 • 2 关注
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    285 引用 • 4482 回帖 • 659 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 582 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    328 引用 • 1705 回帖 • 1 关注
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 1 关注
  • 正则表达式

    正则表达式(Regular Expression)使用单个字符串来描述、匹配一系列遵循某个句法规则的字符串。

    31 引用 • 94 回帖
  • 服务

    提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。

    41 引用 • 24 回帖 • 11 关注
  • 开源中国

    开源中国是目前中国最大的开源技术社区。传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台。目前开源中国社区已收录超过两万款开源软件。

    7 引用 • 86 回帖
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    140 引用 • 441 回帖
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    124 引用 • 580 回帖
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 439 关注
  • JWT

    JWT(JSON Web Token)是一种用于双方之间传递信息的简洁的、安全的表述性声明规范。JWT 作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以 JSON 的形式安全的传递信息。

    20 引用 • 15 回帖 • 21 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    311 引用 • 546 回帖 • 2 关注
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    24 引用 • 373 回帖 • 3 关注
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    103 引用 • 126 回帖 • 442 关注
  • FlowUs

    FlowUs.息流 个人及团队的新一代生产力工具。

    让复杂的信息管理更轻松、自由、充满创意。

    1 引用
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 124 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    920 引用 • 931 回帖