背景#
最近、私は QQ ロボットを使うのに夢中になっていて、いくつかのサードパーティの API を使用して、oicqプロトコルライブラリと組み合わせて、いくつかのシンプルで意味のある機能を実現しています。友達と楽しんでいます。
代表的な例の一つが「毎日 60 秒で世界を理解する」です。毎日 10 数件の短いトピックニュースで、機能はシンプルですが、内容は意味があります。特に私たちのようなニュースを見ない子供たちにとっては。
なぜ自分で作るのか#
多くのウェブサイトの API サービスは安定していないため、時折ダウンしてしまいます。そこで、私は Google で調べてみましたが、ほとんどの API のデータソースはこの毎日 60 秒で世界を理解するの知乎専門コラムに向けられていることがわかりました。
どのように作成されたのか#
一連の操作(正直に言えば、単純な)を経て、専門コラムのデータインターフェースを見つけました:JSON
GET リクエストであり、暗号化やクロスドメイン、リクエストヘッダの制限などはありません。F12
を押すとインターフェースが表示されます
https://www.zhihu.com/api/v4/columns/c_1261258401923026944/items
この API の URL オプションパラメータ:
limit
:返されるデータの数offset
:ページネーションパラメータ
データを取得した後、高性能で低遅延かつキャッシュ機能を備えた API を迅速に作成するために、私はdeno
を選び、Deno Deploy
を使用して展開しました。また、リクエストキャッシュも設定しています。つまり、毎日知乎には 1 回だけリクエストを送信し、2 回目以降はキャッシュを使用して API の応答速度を高めると同時に、知乎サーバーの負荷を軽減しています。
このものの使い方#
ここにデプロイされた API のアドレスを掲載していますので、直接使用することができます~
ソースコードはこちらでご覧いただけます。自分で展開したり、スターをつけたりしてください~