はてなブログをスクレイピングして記事URLを抜きだし、全記事一覧の固定ページを設定したので全作業を公開します

記事URLを抜き出した全記事一覧ページ

みなさんはブログを読んでいて「このブログの全記事を読んでみたい!」と思ったことはありませんか?私はあります!

だけど、「いちいち『次へ』を押したり、そもそも何十ページもめくるのが面倒くせー!」とも思いませんか?私は思います!

というわけで、全記事URLをブログから抜き出してはてなブログの固定ページに貼りつけてやったよ!という記事を書きましたのでぜひとも読んでくださいね!

*本記事はWindows10ではてなブログProを使用した場合のカスタマイズ方法となっています。

 

カスタマイズの結果、と、スクレイピングとは?

冒頭の写真と次の写真が今回のカスタマイズ結果となります。

記事URLを抜き出した全記事一覧ページカスタマイズ結果

そう。ただただズラーッと記事URLがならんでいるだけなんですw が、特化ブログなどでこういうページが欲しかった!という人はたくさんいるはずなんですね。

少なくとも私は、「よく読みに行くブログにあったらなー。いっき読みしやすいのになー」って思っていますよ。

やることは単純に「記事URLをひとつひとつ貼りつけていくだけ」なんですが、このブログの場合およそ260記事ほどあっていちいち記事ページをあけてURLコピーして貼りつけてって作業が絶望的に面倒くさいんですよ。考えただけでも虫ずが走る…

 

そこで出会ったのが「スクレイピング」というテクニック。

ウェブスクレイピングWeb scraping)とは、ウェブサイトから情報を抽出するコンピュータソフトウェア技術のこと。ウェブ・クローラー[1]あるいはウェブ・スパイダー[2]とも呼ばれる。 通常このようなソフトウェアプログラムは低レベルのHTTPを実装することで、もしくはウェブブラウザを埋め込むことによって、WWWのコンテンツを取得する。

ウェブスクレイピング - Wikipediaより

スクレイピングってなんかすごくて、「サイトのHTMLや画像やテキストやURLなんかをいっきに抜き出してくれる」らしいんです。

今回の目的にピッタリやんか!ということで実行してみた結果がこの全記事一覧ページなんですね素晴らしい。

 

さ、賢明なアナタならこれがどれだけ素晴らしいことかわかっていただけたと思いますのでいっきにすすめていこうと思いますよ。

それではいきましょう!

やること

  1. Rubyのインストール
  2. Rubyからnokogiriのインストール
  3. Development kitのダウンロードと展開
  4. テキストエディタで「.rb」ファイルの作成
  5. Rubyで「.rb」ファイルを実行し記事URLを抜き出す
  6. はてなブログで固定ページを作成
  7. 固定ページに記事URLを貼りつける

これだけです。

記事URLを抜き出すまで(5まで)はとんとん拍子でいけば1時間程度でいけるとおもいます。

 

先に言っておきますが、私の場合「7. 固定ページに記事URLを貼りつける」でつまずいちゃいました。抜き出した記事URLに日本語が含まれているため、抜き出したURLの文字部分が文字コードになったんですね。

それを訂正して貼りつけるという作業にさらに1時間かかったんです。それでも記事を開いてコピーしてっていう作業よりは早くなったんだとおもっていますよ。この作業については目次の「反省点」に記載します。

Rubyのインストール

まずはプログラミング言語である「Ruby」をおてもとのWindowsにインストールします。

rubyinstaller.org

Windowsをお使いの方にはインストーラーを使用してインストールできるためスムーズに完了していただけます。

rubyダウンロード

上記サイトをクリックしていただくとこのダウンロード画面が開きます。

「Download」をクリックしてください。

rubyインストーラーダウンロード

この画面から「Ruby 2.4.2-2(x64)」をダウンロードします。すぐ下に「Ruby 2.4.2-2(x86)」とありますが、64ビット版と32ビット版の違いですのでOSが64ビット版の場合はx64をクリックしてダウンロードしてください。

更新プログラムをダウンロードするときに選択する「x86 パッケージ」「x64 パッケージ」という用語の意味

Windowsサポートサイトより

rubyのインストール

インストーラーがダウンロードできましたら早速ダブルクリックして実行しましょう。インストーラーファイルを開くとこの画面になりますので、「I accept the license」をクリックしたうえでNextボタンをクリックするとインストール開始です。

rubyインストール中画面

インストール中です。

rubyインストール完了画面

チェックが入っていることを確認してFInishボタンを押しますと…

ruby最初の画面

この画面(コマンドプロンプト)が自動で立ち上がりますのでエンターキーを押します。

初回は色々とダウンロードされますので10分程度そのまま待ちます。

終了したらエンターキーを押してください。ここでいったん画面が消えますw

ruby再起動

再起動するためにはサイドメニューからこのフォルダをクリックしてください。

ruby再起動2

「Start Command Prompt with Ruby」をクリックしてください。

ruby立ち上がる

やった!

念のため、rubyがインストールされているかどうかをチェックしますね。

rubyインストール確認

「ruby(スペース) - (ハイフン) v」と入力してエンターキーを押してください。

rubyインストール成功画面

この文が表示されればインストール成功です! 

Rubyでnokogiriのインストール

お次はnokogiriというライブラリをrubyからインストールします。このnokogiriのおかげでまさにノコギリのようにサイト情報を切り出してくれるようになるんですね。rubyはこのアプリを動かすためのOSだと考えてみるとわかりやすいです。

nokogiriインストール

「gem install nokogiri」と入力してエンターキーを押してください。

nokogiriインストール完了画面

これでインストールできているはずですが、先ほどrubyでもしたように確認してみましょう。

nokogiriインストール確認方法

「nokogiri -v」と入力してエンターキーを押してください。nokogiriとハイフンの間にはスペースを入れてくださいね。

nokogiriインストール確認画面

やった!

Development Kitのダウンロードと展開

rubyのダウンロード画面を再度開けてください。

rubyのDevelopment kit

先ほどダウンロードしたrubyファイルの下のほうにあるファイルをクリックしてダウンロードしてください。

ダウンロードが終了するとともにファイルをダブルクリックしてください。

rubyのDevelopment kit展開

展開すると自動でインストールが完了します。

テキストエディタで「.rb」ファイルの作成

眠たくなってませんか?どんどんいきますよ!

テキストエディタでrubyファイル作成

Windowsに付属のメモ帳などテキストエディタを起動し、新規ファイルを作成します。ファイルの作成場所はデスクトップでかまいません。

.rbファイルの作成画面

  • ファイル名は「任意の英字+.rb(ドットアールビー)」にしてください。

この場合、makiyamazakiが任意の英字となります。

  • ファイルの種類は「すべてのファイル」を選択してください。

早速.rbファイルに記述していきます。

はてなブログ用.rbファイル

が、もちろん管理人もプログラミング的なことはチンプンカンプンですので下記のサイト様よりコピペさせていただきましょうね。

qiita.com

貼りつけが終わったらファイルに記述します。

.rbファイル変更場所

  • blog_idの「''」の間にはてなブログのidを入れてください。
  • urlの「{blog_id}」にブログidを入れましょう。

*私の場合は独自ドメインを取得していますので「""」の間に「ブログURL+/archive」と入力しました。独自ドメインの場合はblog_idを入力する必要性がないように思われましたが念のため入力しました。動作には問題ありません。

.rbファイルを保存画面

必ず上書き保存しましょうね。

以上で準備は完了です!

Rubyで「.rb」ファイルを実行し記事URLを抜き出す

それでは早速ファイルを実行しましょう!

.rbファイルの実行

「ruby  makiyamazaki.rb」と入力します。rubyとmakiyamazaki.rbの間にはスペースを入れて下さい。

エンターキーを押すと…

rubyUEL抜き出しのようす

ズラズラーッとURLが抜き出されていることでしょう!

URLをコピーする画面

マウスでURL部分を選択してキーボードでコピーします。

選択部分が解除されますが間違いなくコピーされています。

念のためメモ帳などにペーストしてみても良いでしょう。

はてなブログで固定ページを作成

*ここからの作業はMacにて行っております。

はてなブログ固定ページ作成画面

「ダッシュボード」から「固定ページ」を選択すると、

はてなブログ固定ページ作成画面2

サイトURLを入力する画面になりますので任意の英字などを入力して「ページを作る」ボタンを押しましょう。

はてなブログ固定ページレイアウト選択画面

いつものブログ編集画面があらわれますが、固定ページにはレイアウト選択肢があるようですね。私は「記事レイアウト」を選択しました。

固定ページに記事URLを貼りつける

*ここからの作業はMacにて行っております。

ここまで来たらもう終わりが見えてきましたね。

取得した記事URLをブログの編集画面に貼りつけるだけです。1つ1つ貼りつける作業にはなりますがこればかりは仕方ありませんよね。

で、ですね。ここで問題発生。

記事URLの貼りつけ

いつものリンク選択画面にならない!

よくよく見てみますとURLの頭に「"」がついているじゃありませんか!

これを外してみますと、、、、

いつものリンク選択画面にならなーい!

わけがわからないままとりあえずマウスで右クリックしてみると、、

ペーストしてスタイルを合わせる

「ペーストしてスタイルを合わせる」って何?

ってことで試してみますと、

リンク挿入画面

いつものリンク挿入画面がでました!

ということで、少々手間は増えるのですが頑張って作業することにしました。

反省点

テキストリンクで記事一覧ページが作成できたことは大変満足しています。私も早速全記事を俯瞰して懐かしんだりしましたよ。

ただ、記事URLに日本語が含まれていたため、rubyで抽出されたURLの日本語部分が文字コードとなってしまい、はてなブログ編集画面側がリンクとして一発認識してくれない結果となってしまいました。

はてなブログのURLを「カスタマイズURL」とされている方は私のように作業に一手間増えてしまいますね。

頑張ってください。

次からは楽になるはず!

が、一度作成してしまえばもうこっちのもんですよね。

次からはrubyを起動することなく、「記事作成→記事URLコピペ」でいけますし。

今回お世話になったブログ記事

www.takeiho.com

qiita.com

qiita.com

systemengineer.site

morizyun.github.io

madogiwa0124.hatenablog.com

これらの記事を管理人なりに噛みくだき?ながら今回の記事を作成させていただきました。ありがとうございます!

おわりに

今回どうなることかと思いながら作業したのですが、世の中にはスクレイピングなどという素晴らしいテクニックがあるなんて考えもしてみなかったですよ。

伝説の武器を手に入れたような(レベルが足りなくて使いこなせないけど)嬉しさがありますよ!

アナタも記事一覧ページ、つくってみてはいかがでしょうか?

記事いっき読みしたい人は必ずいるはずですしね!

それでは以上です!