掘金 人工智能 前天 18:48
从 OneTab 到 AI 知识库:我的个人网页收藏管理方案
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了一个开发者如何利用AI技术,将浏览器插件OneTab中的网页收藏转化为可查询的知识库。通过Python脚本提取数据、网页内容抓取、数据格式化和使用Dify平台构建知识库,解决了历史收藏难以检索、主题分散等问题。最终实现了快速检索、按主题组织资源、自然语言查询等功能,提高了工作效率,并展示了AI与日常工具结合的潜力。

📌 **数据提取与处理:** 作者开发Python脚本,从Edge浏览器的收藏夹中提取OneTab链接,获取网页的标题和URL,为后续的数据处理奠定基础。

🌐 **网页内容抓取:** 使用requests和BeautifulSoup库抓取和解析OneTab页面内容,提取每个标签组的标题和链接,为构建知识库提供结构化数据。

📝 **数据格式化:** 将处理后的数据转换为结构化的Markdown格式,保留原有的主题分类结构,方便导入到知识库平台。

🤖 **知识库构建:** 利用Dify平台构建AI知识库,导入Markdown文件,配置知识库参数,并创建AI Agent,通过自然语言查询实现智能检索功能。

背景与动机

作为一名经常浏览网页的开发者,我使用 OneTab 插件来管理我的浏览器标签页。OneTab 不仅帮我节省了内存,还让我能够将相关的网页链接组织在一起。然而,随着时间推移,我积累了大量的 OneTab 归档,这些宝贵的资源却难以被有效利用。

主要痛点:

    历史收藏难以检索相关主题的链接分散在不同归档中无法快速找到特定主题的所有相关资源收藏的网页内容无法被有效利用

解决方案

我决定构建一个基于 AI 的个人知识库系统,将 OneTab 中的网页收藏转化为可查询的知识。整个方案分为以下几个步骤:

1. 数据提取与处理

首先,我开发了一个 Python 脚本来处理 Edge 浏览器的收藏夹数据:

# 从 Edge 收藏夹中提取 OneTab 链接def get_onetab_urls(json_file):    with open(json_file, 'r', encoding='utf-8') as f:        bookmarks = json.load(f)      onetab_urls = []    for folder in bookmarks.get('收藏夹栏', []):        if folder.get('name') == 'onetab 归档':            for item in folder.get('children', []):                if item.get('type') == 'url':                    onetab_urls.append({                        'name': item['name'],                        'url': item['url'],                        'date_added': item['date_added']                    })    return onetab_urls

2. 网页内容抓取

使用 requests 和 BeautifulSoup 库来获取和解析 OneTab 页面内容:

def parse_onetab_content(html_content):    soup = BeautifulSoup(html_content, 'html.parser')    groups = []      for group in soup.find_all(class_='tabGroup'):        group_title = group.find(class_='tabGroupLabel')        if not group_title:            continue              title = group_title.get_text(strip=True)        urls = []          for tab in group.find_all(class_='tab'):            link = tab.find(class_='tabLink')            if link:                url = link.get('href', '')                name = link.get_text(strip=True)                if url and name:                    urls.append({                        'name': name,                        'url': url                    })          if urls:            groups.append({                'title': title,                'urls': urls            })      return groups

3. 数据格式化

将处理后的数据转换为结构化的 Markdown 格式:

# OneTab - 20220217添加时间: 2022-02-17 06:22:42## 文档化方法论- Documentation Matters: Human-Centered AI System to Assist Data Science Code Documentation in Computational Notebooks | ACM Transactions on Computer-Human Interaction: https://dl.acm.org/doi/abs/10.1145/3489465- A study of the documentation essential to software maintenance: https://dl.acm.org/doi/abs/10.1145/1085313.1085331---

4. 知识库构建

使用 Dify 平台构建 AI 知识库:

    导入处理好的 Markdown 文件配置知识库参数创建 AI Agent 并设置提示词

最终效果

通过这个系统,我现在可以:

    快速检索历史收藏的网页按主题组织相关资源通过自然语言查询获取相关信息发现不同归档中的相关主题

例如,我可以这样查询:

技术亮点

    自动化处理:整个数据提取和处理过程完全自动化结构化存储:保持原有的主题分类结构AI 增强:利用 Dify 的 AI 能力实现智能检索可扩展性:支持持续添加新的 OneTab 归档

总结

这个项目不仅解决了我的个人知识管理问题,还展示了如何将日常工具与 AI 技术结合,创造出更智能的工作方式。通过将散落的网页收藏转化为结构化的知识库,我能够更有效地利用这些资源,提高工作效率。

相关资源

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

OneTab AI知识库 Python Dify 知识管理
相关文章