Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Chrome谷歌浏览器书签bookmark转成json数据或markdown格式

Chrome谷歌浏览器书签bookmark转成json数据或markdown格式

作者头像
人人都是码农
发布于 2023-11-17 03:06:48
发布于 2023-11-17 03:06:48
1.6K00
代码可运行
举报
运行总次数:0
代码可运行

一直使用谷歌浏览器,因为某些原因登录谷歌账号不方便,所以公司和家里的浏览器上收藏的好多书签也不能同步,以前都是直接导出来,然后自己手动导入同步。

最近打算把所有书签整理下放到自己的 blog 上维护,blog 是用 vuepress2 搭建的,里面的 markdown 页面本身也是可以直接写 html 标签的。原以为直接导出的 bookmark.html 文件直接粘贴到 md 中就能用的,还是 to young to simple,导出来的 html 文件长这样:

和我们正常的 html 页面不太一样,所有标签名和属性名全部大写了,DT、P标签都没有结束标签,即未严格标签嵌套,直接放到 vuepress 的 md 中运行和打包都会报错的。

一、自己手动替换修改

首先想到的当然是看能不能直接简单修改下能解决,直接全局替换和修改下标签确实可以,直接用 vscode 全局替换下就行:

  • 删掉第一个 DL 标签前面的代码
  • 全局删掉所有开始 P 标签
  • H3 和 A 结束标签末尾加上 DT 结束标签
  • 如果报错:Unexpected EOF in tag...删掉报错标签上除了常规属性,如 href 属性之外的其他属性
  • DL、DT、H3、A 标签全部替换成小写,否则 build 时会报错:TypeError: Invalid value used as weak map key

二、借助浏览器解析标签

借助 input 的 file 属性可以在浏览器中加载出来 bookmark.html 的文件 File 信息,也就跟我们平时实现的上传选择文件功能一样。

File 接口继承了 Blob 的方法和属性,里面有一个 text 方法,Blob.text()方法返回一个 Promise 对象,包含 blob 中的内容,使用 UTF-8 格式编码。和 FileReader 的 readAsText() 有点类似,我们可以借助这个方法把文件里面的信息转成文本。

注意 File 对象中只存在于浏览器环境中,在 node 环境中米有,不过在 node 中我们可以直接用 fs.readFile 来读取文件内容。

思路:
  1. 先通过 File 对象读取 bookmark.html 成字符串文本
  2. 然后再将文本直接借助浏览器的 DOM 节点的 innerHTML 渲染成 html 标签,这一步浏览器会自动帮我们转成节点列表 NodeList,也不需要我们自己在额外处理标签未严格嵌套的问题
  3. 然后就可以直接遍历 NodeList 来格式化我们想要的数据了,注意书签数据在最外层的 dl 节点下

注意 生成 markdown 文件时,超链接的文字内容里带标签的话,vuepress build 编译时会报错:Compiling with vite[vite:vue] Element is missing end tag,解决方式将标签的尖括号去掉:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- 错误方式 -->
[HTML<pre>标签中嵌套HTML标签时被解析的解决方案](http://xxx.com)

<!-- 正确方式 -->
[HTML的pre标签中嵌套HTML标签时被解析的解决方案](http://xxx.com)

网页版地址:https://cafehaus.github.io/parse-bookmark

三、nodejs 版本

大题思路其实和浏览器版本一样,只不过解析 dom 节点我们需要借助第三方 dom 库,如 htmlparser2:

  • npm 包:parse-bookmark
  • Github仓库:https://cafehaus.github.io/parse-bookmark

四、系统自动生成的书签json文件

Chrome 浏览器其实有自动生成的json文件,具体位置:

  • windows 系统 C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\Bookmarks
  • mac 系统 /Users/${一般是你的电脑账号名}/Library/Application Support/Google/Chrome/Default/Bookmarks

也可以直接在谷歌浏览器地址栏输入 chrome://version,会自动加载出有关谷歌浏览器的各种信息。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秘密菜单 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linux安装NVIDIA显卡驱动的正确姿势
可能想玩Linux系统的童鞋,往往死在安装NVIDIA显卡驱动上,所以这篇文章帮助大家以正常的方式安装NVIDIA驱动。
全栈程序员站长
2022/07/23
17.6K0
Linux安装NVIDIA显卡驱动的正确姿势
GPU服务器深度学习环境搭建及图形界面安装
本人使用的是腾讯云提供的GPU计算型服务器GN8,安装系统为Ubuntu18.04,下面简单介绍下如何进行深度学习环境的搭建以及Ubuntu图形界面的安装。
用户9686863
2022/05/15
2.9K0
在Ubuntu 18.04上安装NVIDIA
在安装之前首先就是要禁用Nouveau的驱动,禁用该驱动的方法参照这篇https://www.linuxidc.com/Linux/2019-02/157171.htm。
小陈运维
2021/10/13
1.5K0
Docker: Nvidia Driver, Nvidia Docker 推荐安装步骤
最后, sudo reboot 重启。之后,运行 nvidia-smi 输出 Nvidia 驱动信息:
GoCoding
2021/05/06
1.5K0
Ubuntu16安装Nvidia驱动(GTX1060显卡)
本篇概览 台式机是2018年购买的惠普暗隐精灵3代,显卡GTX1060,本文记录了此机器安装Ubuntu 16.04.7 LTS,再安装Nvidia驱动的过程; 另外还有一些避坑的小结,如果您遇到了类似问题可以拿来参考; 纯净Ubuntu系统 先安装Ubuntu16 LTS桌面版 U盘安装,我这里是惠普台式机,启动时出现惠普LOGO的时候,多次点击F10,进入bios,启动顺序选择U盘启动,然后在页面指导下顺利安装Ubuntu系统 需要注意的地方 网上很多安装文档中提到了要在BIOS设置中关闭secure
程序员欣宸
2021/12/07
9290
Ubuntu16安装Nvidia驱动(GTX1060显卡)
Linux Ubuntu配置CPU、GPU通用的tensorflow
  本文介绍在Linux操作系统的发行版本Ubuntu中,配置可以用CPU或GPU运行的Python新版本深度学习库tensorflow的方法。
疯狂学习GIS
2023/09/06
8480
Linux Ubuntu配置CPU、GPU通用的tensorflow
Ubuntu18.10配置Nvidia驱动
一般这样就可以了,此时“软件和更新”-》“附加驱动”中就会出现已安装的所有,选一个合适的即可,比如:
WindCoder
2020/01/21
8440
Ubuntu18.10配置Nvidia驱动
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)「建议收藏」
硬件环境: 自己的笔记本电脑 CPU:i5-4210M GPU:NVIDIA Geforce 940M
全栈程序员站长
2022/11/10
3.3K0
Ubuntu18.04下安装Pytorch-GPU(超详细自己安装全过程)「建议收藏」
玩转 AIGC:打造 AI 大模型云主机,Ubuntu 24.04 LTS 安装 Docker 和 NVIDIA Container Toolkit
今天分享的内容是 玩转 AIGC「2024」 系列文档中的 打造本地 AI 大模型地基,Ubuntu 24.04 LTS 安装 Docker 和 NVIDIA Container Toolkit。
运维有术
2024/05/07
1.2K0
玩转 AIGC:打造 AI 大模型云主机,Ubuntu 24.04 LTS 安装 Docker 和 NVIDIA Container Toolkit
Ubuntu 16.04安装 cuda 9.2
0x00 前言 之前在Ubuntu 16.04上安装了[cuda 9.1],工作也很正常。但是,后来莫名奇妙就出问题了,重装cuda之后还总是进不了系统。因此,寻找到了以下优化的安装方法。 0x01 安装步骤 主要优化点:将之前使用cuda中自带的GPU驱动改为手动安装。 以下操作都在root权限下执行: 1、 安装GPU驱动 更新源 add-apt-repository ppa:graphics-drivers/ppa apt update 检查当前最佳驱动版本 root@vm:~# ubuntu-dri
drunkdream
2018/07/06
2.2K0
解决Ubuntu循环登陆问题 + Nvidia驱动、Cuda、Cudnn安装
ubuntu系统显卡驱动偶尔会出现奇怪的问题,造成图形用户界面循环登陆,本文记录相关问题的解决方案。 卸载旧驱动 在登陆界面 ctrl+alt+F2 进入非图形界面控制台,登陆后输入命令: sudo apt-get remove nvidia-* sudo apt-get autoremove sudo apt-get purge nvidia* 安装驱动 加入PPA,然后更新库 sudo add-apt-repository ppa:graphics-drivers sudo apt-get
为为为什么
2022/08/05
1.1K0
ubuntu 16.04(Windows 10双系统+grub引导)无法进入tt1~tt6(NVIDIA驱动安装相关-黑屏,login loop,分辨率)
本来想了解一下X-Window,所以打算去tt1,结果ctrl+alt+f1出现的居然是图形界面,搜了一下是显卡驱动版本的问题,此时我用的是Xorg开源驱动,于是根据教程,准备安装一个最新版的NVIDIA驱动,然后噩梦就开始了QWQ 先回顾一下我的过程:
Enterprise_
2019/03/11
3.5K0
ubuntu 16.04(Windows 10双系统+grub引导)无法进入tt1~tt6(NVIDIA驱动安装相关-黑屏,login loop,分辨率)
真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)
目前,大多情况下,能搜到的基本上都ubuntu 14.04.或者是ubuntu 16.04的操作系统安装以及GPU 环境搭建过程,博主就目前自身实验室环境进行分析,总结一下安装过程。
全栈程序员站长
2022/08/20
2.2K0
真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)
ubuntu16.04下安装NVIDIA(cuda)-gtx965m相关步骤以及问题
ubunt版本:16.04 笔记本:机械革命,i7-6700,gtx965m(集显Intel Hm170 ) 安装NVIDIA以及cuda来测试深度学习
老潘
2018/06/21
1.3K0
ubuntu16.04下安装NVIDIA(cuda)-gtx965m相关步骤以及问题
Ubuntu20.04安装NVIDIA CUDA全纪录+解决SSH一段时间自动断开报Destination Host Unreachable
报错cannot find -lcudart/cannot find -lcusparse的修复
小锋学长生活大爆炸
2022/11/14
1.3K0
Ubuntu20.04安装NVIDIA CUDA全纪录+解决SSH一段时间自动断开报Destination Host Unreachable
关于Ubuntu16.04上N卡驱动导致滚动屏幕卡顿问题
屏幕显示正常,但是在打开网页或者进行跑深度学习程序的时候画面会发生一卡一下的情况,严重时出现类似于死机的情况。查看系统monitor并不现实显存和内存爆表,于是推断为nvidia显卡驱动不兼容的问题。
老潘
2018/06/21
4.4K0
关于Ubuntu16.04上N卡驱动导致滚动屏幕卡顿问题
ubuntu16.04下NVIDIA GTX965M显卡驱动PPA安装
该文介绍了在Ubuntu 16.04系统中,安装NVIDIA GTX965M显卡驱动的方法,通过PPA源安装,禁用nouveau驱动,并更新内核,即可成功安装。安装完成后,重启系统,登录死机现象消失,系统运行正常。
10km
2018/01/03
9.9K1
ubuntu16.04下NVIDIA GTX965M显卡驱动PPA安装
解决Ubuntu系统/usr/lib/xorg/Xorg占用显卡内存问题原创
在Ubuntu系统中,/usr/lib/xorg/Xorg进程占用显卡内存的问题可能会影响系统性能,特别是在使用GPU进行计算任务时。以下是一些解决方法,可以帮助你减少或解决这个问题:
AI拉呱
2024/06/09
2.7K1
Nvidia 3060显卡 CUDA环境搭建(Ubuntu22.04+Nvidia 510+Cuda11.6+cudnn8.8)
对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》
山河已无恙
2023/08/21
2K1
Nvidia 3060显卡 CUDA环境搭建(Ubuntu22.04+Nvidia 510+Cuda11.6+cudnn8.8)
Ubuntu 18.04安装英伟达显卡驱动
前几天买了一张RTX2060显卡,想自学一下人工智能,跑一些图形计算,安装Ubuntu1 8.04后发现英伟达显卡驱动安装还是有点小麻烦,所以这里记录一下安装过程,以供参考:
用户8705036
2021/06/08
2.2K0
推荐阅读
相关推荐
Linux安装NVIDIA显卡驱动的正确姿势
更多 >
LV.0
这个人很懒,什么都没有留下~
作者相关精选
交个朋友
加入架构与运维工作实战群
高并发系统设计 运维自动化实践
加入架构与运维学习入门群
系统架构设计入门 运维体系构建指南
加入架构与运维趋势交流群
技术趋势前瞻 架构演进方向
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验