知乎备份计划

知乎备份计划

  • date: 2022-08-07
  • lastmod: 2022-08-07

知乎助手

基于node&typescript重写知乎助手 YaoZeyuan/zhihuhelp,文章、回答、想法保存测试通过,收藏夹测试失效。

MaoXian Web Clipper

一个简洁的浏览器扩展,让你看到想收藏的内容,可以直接裁剪保存下来,以避免网站挂了,网址失效,图片失效等问题。是的,没有烦人的注册,也不收费。

保存知乎收藏夹需要自己逐个展开内容和评论(评论只能存一页),存为多个文,想合并为一个文件需借助插件Single File,收藏家存下的可能是多个问题,存下来没有书签

js

小知识,CSS 中 id 选择器以 “#” 来定义,类选择器以一个点 . 号显示。

收藏夹页面,默认文章均不打开,一页是20篇,摘要末尾都是“阅读全文”,点击才可以看到全文,浏览器F12可以查到这个按钮的类属性为“Button ContentItem-more Button–plain“,通过在控制台跑两次$(".ContentItem-more").click()可以知道这句话可以一次展开一篇文章,那么写一个循环就可以展开全部了,当然用定时器也行,写完如下(间隔1000ms)

// 间隔1s点击一个“阅读全文”按钮
(function(){setInterval(function(){$(".Button.ContentItem-more.Button--plain").click()},1000)})();

循环比定时器好在可以控制次数,缺点是控制时间间隔比较烦,目前测试不控制时间间隔也可以展开,这样操作容易被zh封。

// 一瞬间点击20个   “阅读全文”按钮
for (i = 0; i < 20; i++) { 
    $(".Button.ContentItem-more.Button--plain").click();
}

而展开评论也可以通过同样办法,$(".Button.ContentItem-action.Button--plain.Button--withIcon.Button--withLabel").click();,然而测试这样只是会反复展开、收起同一页评论。。。于是要找到所有的按钮逐个点击

// 展开所有篇幅的第一页评论,能用,warning在于getElementsByClassName返回的数量比实际按钮多,说明类筛选还需要改进
var comments = document.getElementsByClassName('Button ContentItem-action Button--plain Button--withIcon Button--withLabel');

for (i = 0; i < comments.length; i++) { 
    comments[i].click();
}

展开之后用MaoXian Web Clipper进行保存

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值