Skip to content

FAQ 与 使用经验

这里汇总了一些用户在使用 Weibo Archiver 过程中可能遇到的常见问题和一些实用经验。

为什么有时候微博爬取不全?

这是微博官方网页版自身的限制,它只允许用户查看最近的约 2 万条微博,超过会提示“更多内容请到客户端查看”。

如果你需要备份的微博数量超过这个限制,建议使用“按时间范围筛选”功能,分段进行爬取。例如,先备份2023年的,再备份2022年的,以此类推。多次导出的 weibo-data.json 文件可以在“网页端导入查看”工具中自动合并。

不过经过测试发现,按时间筛选只能获取最多 1100 条微博,而且时间跨度很大的时候会出现缺少部分微博的现象,需要权衡发博的频率来调整时间范围。

预计会参考微博客户端的实现来修改爬取的逻辑,以便支持更多更稳定的爬取方式。

为什么有时候爬取会失败,或者一直卡住不动?

最常见的原因是你的网络 IP 被微博暂时限制了,这通常发生在长时间或多次连续爬取后。

  • 等待: 暂停操作,等待几十分钟到一小时,通常会自动解除。
  • 切换网络: 尝试切换到不同的 WiFi,或使用手机流量共享热点。
  • 网络代理: 如果你有全局网络代理工具,可以尝试切换代理服务器IP。
  • 继续上次记录: 问题解决后,再次运行油猴脚本时,如果脚本支持,记得勾选“继续上次的记录”选项,可以从中断的地方继续。

我能备份多少微博?哪些微博可以备份?

核心原则:只要你在登录微博网页版后能看到的微博,就能备份。

  • 自己的微博: 对于你自己的账号,只要微博内容本身没有被删除或设为私密(对自己可见),通常都能备份,包括那些设置了“仅半年可见”但对自己仍可见的内容。
  • 他人微博: 只能获取对方设置为“公开”的微博。如果对方设置了“仅半年可见”,你只能获取近半年的公开微博;如果设置了“仅粉丝可见”,而你不是其粉丝,则无法获取。
  • 账号被封: 即使你的微博账号被封禁,只要你还能访问自己的主页并看到自己的微博,理论上也能进行备份。

无法获取在备份期间那些已删除的微博(转发的原微博)。

我备份的微博数据安全吗?别人能通过链接看到我的备份吗?

当你使用“网页端导入查看”功能时,你上传的 weibo-data.json 文件数据完全保存在你的浏览器本地,不会上传到任何服务器。这意味着:

  • 只有你自己能看到这些数据。
  • 别人无法通过你正在使用的预览页面链接直接访问你的微博数据。

有计划支持上传到如 WebDav 自己的服务器上来实现跨设备在线查看。

关注列表能全部导出吗?

  • 自己的账号: 对于你当前登录的账号,理论上可以获取全部关注列表。但有时微博服务器可能会莫名其妙地“吞掉”几个,导致数量略有不符,这属于正常现象。
  • 他人账号: 微博官方限制了最多只能查看其他人的前 200 个关注用户。

支持导出视频吗?图片是怎么处理的?

如果不下载图片到本地,将采用第三方的链接来代理(如下图)。不过还是建议下载图片到本地:

  • 图片: 油猴脚本会导出图片的原始链接列表 (imgs.csv)。你需要使用 本地图片服务器 工具将这些图片实际下载到你的电脑上。这样做是为了确保即使微博服务器上的原始图片被删除或链接失效,你本地仍有副本,可以实现真正的离线查看。
  • 视频: 由于视频文件通常体积较大,处理复杂,目前工具会将视频作为外部链接记录在 weibo-data.json 中。在预览时,点击视频会跳转到原始微博页面观看。
示例图片

下载后的图片,可以在用自己的图床链接吗?

可以。如果你将下载后的图片(保持原有文件夹结构和文件名不变)上传到了自己的图床服务器,可以在预览页面的设置选项中填写你的图床链接前缀(例如 https://my-cdn.com/weibo-images/

也可以在你的服务器上运行提供的 图片下载的脚本,由于系统有一套自定义的文件名命名规则,用别的下载工具可能会识别不出来,逻辑如下:

ts
// https://wx1.sinaimg.cn/large/0033ImPzly1i1kqwyp6iwj61jk15o1kx02.jpg?name=233
// 将会变成
// wx1.sinaimg.cn-0033ImPzly1i1kqwyp6iwj61jk15o1kx02.jpg

const name = src.split('/').pop()?.replace(/\?.+/, '') // 同时去除 params
const prefix = src.match(/^(?:https?:\/\/)?([^:/\n]+)/im)?.[1] // 域名
const fileName = `${prefix}-${name}`

return `${imgServerHost}/${fileName}`

有什么一般性的使用建议吗?

  • 选择合适的时间: 为了减轻微博服务器的压力,也为了降低自己被临时限制的风险,建议尽量在微博使用人数较少的时间段(如深夜、清晨)进行备份操作。
  • 分批操作: 对于大量数据的备份,无论是使用油猴脚本还是 CLI,都推荐分批次、分时段进行,避免一次性请求过多数据。
  • 定期备份: 如果你想持续备份,可以考虑每周或每月运行一次备份工具,并使用增量更新功能(如 CLI 的 --fetchAll=false 或油猴脚本的“继续上次记录”)。

这个工具收费吗?

完全免费! Weibo Archiver 使用 Apache 2.0 开源协议。这意味着你可以自由使用、修改和分发它,但如果你进行二次创作或引用,需要注明原作者和出处,并且不能修改原始的开源协议或许可声明。我们不会以任何形式向你收费。

希望这些解答和经验能帮助你更好地使用 Weibo Archiver!