Speechless 是一个帮助新浪微博用户,把微博内容导出成 PDF 进行本地备份的 Chrome Extension。
Chrome 并没有为 Extension 提供直接导出 PDF 的 Api,但是可以借助 Chrome 的 打印预览/另存为 PDF 功能,将网页的内容直接另存为 PDF。
所以 Speechless 做了以下几件事情:
- 在页面上找到需要备份用户的 UID,这通常可以通过 URL 直接获得
- 通过 Ajax 不断去拉取该用户可见的微博内容,当内容中有长文时,额外通过接口获取长文信息
- 将拉取到的微博内容,添加到页面的节点上,并且设置基本的样式和布局
- 直到所有内容都拉取完毕之后,通过点击事件触发
window.print()
,唤起 Chrome 自带的打印预览界面 - 在打印预览界面选择 另存为 PDF,导出即可
- 愿人人都有自由表达的权利。
- 使用 Weibo API 获取用户 UID 和用户名 @jingfelix
- 修复了 icon name 错误的大小写问题 @jjhhms