在活动网站中检索外部 Torrent 统计信息的最佳方式

Best way to retrieve external torrent statistics in an active website

我正在制作一个类似于海盗湾 Kickass.to 等的 bittorrent tracker/website。有必要在索引和 torrent 页面中检索 torrent 统计信息(播种器、下载)。示例:

http://kat.cr/ubuntu-15-04-vivid-vervet-desktop-amd64-iso-final-t10550003.html
播种者:3442 吸血者:148

如果 torrent 使用我的跟踪器,则可以轻松快速地检索两个页面的数据。但是,如果 torrent 使用不同的跟踪器,我需要从所述跟踪器中抓取它的统计信息(向它发出请求),但是每个 torrent 通常需要几秒钟,显然,我不能让用户等待好久不见房源了。

我制作了一个脚本,可以在后台抓取最新的 90 个种子 运行,但我担心这还不够。网站会越来越大,种子总数可能会超过 5000。我认为在后台抓取那么多种子是行不通的。

我该怎么做?

当开放跟踪器使用 http 时,您通常可以在 Tracker 'scrape' Convention.
之后进行全面抓取 现在,当跟踪器改用 UDP 时,就不可能再进行全面抓取了。

作为替代方案,一些开放跟踪器会在其网站上发布完整的抓取内容:

其他跟踪器可能会或可能不会根据请求提供对此类文件的访问权限。

可以使用以下获取统计信息的策略,按效率降序排列:

  1. 通过抓取界面进行全面抓取 - 过去很常见,但由于它引起的流量,现在在大型跟踪器上不太常见
  2. 通过自定义导出 URL 完全抓取 - 您必须询问跟踪器管理员。有时会记录在他们的网站上
  3. UDP 多抓取
  4. HTTP multi-scrape 通过 /scrape?info_hash=A&info_hash=B&info_hash=C - 有些跟踪器支持,有些不支持。
  5. http 单抓取
  6. DHT scrape
  7. 加入群体并通过PEX
  8. 进行测量