Mae向きなブログ

Mae向きな情報発信を続けていきたいと思います。

『例解UNIX/Linuxプログラミング教室 システムコールを使いこなすための12講 』章末問題(8章の3)

第8章は、「ソケット通信入門」でした。ネットワークに関するプログラムを作るとなると Ruby を使うことが多かったので、C言語で取り組むのは本当に久しぶりです。

第8章 章末問題 3.

複数のお気に入りアドレスをあらかじめ指定しておき、動作させるとそれらのページの最終変更時刻を表示するようなページ更新確認プログラムを作ってみよう。

面白そうな問題でしたので、取り組んでみたのですが、

  • 最近は、httpsとなっていること
  • Last-Modifiedヘッダがついてなさそう(少なくともHatenaBlogにはついてなかった)

ということで、以下のように問題を変更して取り組んでみました。

  • お気に入りのはてなブログのアドレスをhatena_blog_list.txtに登録
  • feed情報の<updated>タグ(↓)から更新情報書を取得

f:id:rahaema:20210627183621p:plain

プログラム例(hatena_blog_check.c)

上記のhatena_blog_list.txtの各行にはupdateされた日時が記載されていますが、最初は以下のように各行にアドレスを記入するだけで大丈夫です。

maehrm.hatenablog.com
hyuki.hatenablog.com

実行結果

% gcc hatena_blog_check.c -o hatena_blog_check -lssl -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib
% ./hatena_blog_check
maehrm.hatenablog.com updated!

参考