平台开发中,欢迎参与测试。你可以在 QQ群:1046115671 中与我们交流,或是直接在社区发帖。

    2021年11月第四周周报

    • 孙锡源
      楼主

      上周 LP Trnaslate 插件开发工作暂时停止,工作重点转到了重构应用市场的爬虫机制上。这不意味着翻译平台的开发工作被放下了,而是因为应用市场的爬虫与翻译平台的项目更新机制是捆绑在一起的,也即:只有应用市场发现项目更新了,翻译平台这边才会去 wordpress.org 采集新的翻译原文。所以其实重构应用市场爬虫是为了更及时的更新翻译原文,防止用户通过 LP Translate 插件同步到的翻译与本地的项目版本匹配不上导致缺、漏字符串的情况。

      新的爬虫机制主要的设计指标是:每 30 分钟同步一次,同时以增量同步取代过往的全量同步。

      具体的设计方案在前几天发的帖子中有简要叙述,这里再详细阐述一下:

      整个爬虫机制分为两个互相解耦的模块,一个模块负责采集需要更新的项目的 Slug 并压入队列,另一个模块负责对队列中的 Slug 逐一采集数据并入库。

      Slug 采集模块通过每 30 分钟监控一次 WordPress 官方的 SVN 更新日志来从里面提取涉及更新的项目的 Slug。当然,监控过程中还会涉及一些细节问题,比如说:如果长时间不更新以至积压的话要怎么办?

      而数据采集模块也不再爬取 wordpress.org 网页,而是直接从 api.wordpress.org 提取数据。对于类似项目 ICON 这些数据在项目详情 API 中是不会返回的,于是需要通过克隆 SVN 仓库的 assets 目录并加以分析来获取每个项目的静态文件。

      上周处理完了 Slug 采集模块,还需要一周的时间才能全部处理完。LP Translate 如果有影响使用的 BUG 的话会插队修复,否则会在爬虫机制处理完后再修复。

正在查看 0 条回复
  • 哎呀,回复话题必需登录。