Skip to content
由魔法生成的目录

M1.2

任务描述

上回书说到,bLue 想让你帮他搜寻选手信息。你应该已经完成了任务。但 bLue 并不满足于此,因为 ACM 之神托梦说 CF 会在 2077 年迎来大改版,因此 bLue 需要更稳定和可靠的爬取方式。

对于一些提供了 API(应用程序接口)的网站来说,直接爬取 API 会比爬取 HTML 再解析具有更好的稳定性和可靠性。因此,bLue 希望你能够优化你的程序,通过爬取 API 来获取所需的数据。同时,你的程序需要更健壮,能处理除了业务响应以外的其他至少 3 种异常情况。

对于这个任务,你需要根据 bLue 请求的 handle,返回对应用户的基本数据。

任务要求

基础要求同 M1.1。但你需要处理至少 3 种异常情况(不包括 M1.1 中提及的情况),并输出合适的错误信息到 stderr。

输出数据结构

同 M1.1。

运行效果示例

同 M1.1。

建议完成用时

1-2 天。

自学参考资料关键词

  • HTTP
  • API
  • JSON

总结回顾检查点

  1. 什么场景适合爬取 HTML?什么场景适合爬取 API?它们分别有什么优劣?
  2. 有哪些常见爬虫的异常情况需要考虑?

提示

在此查阅 Codeforces API 文档:

api entryy

由三位创世大魔法使共同写成,作为世界树记忆被封存并藉由元素脉络传播至全宇宙。