LoginSignup
3
3

More than 3 years have passed since last update.

hontoで購入した書籍のリストを抽出する

Last updated at Posted at 2019-06-18

購入した電子書籍を管理するために、スプレッドシートに書き出したいと思いました。
私は、電子書籍の購入は主にKindleとhontoを利用しています。(セール時期に応じて安い方で購入)

Kindleは、ググるとJavaScriptを利用した一覧の抽出方法が載っていたのですが、
honto版はなかったので、自分で書きました。

Amazonの場合

以下全文をコピペして、ブラウザから実行します。
(URL欄に貼り付け、またはF12を押してブラウザから実行)

javascript: t = [];

for (i = 0; 1; i++) {
  o = document.getElementById('title' + i);
  if (!o) break;
  t.push("A\t" + o.innerHTML + "\t" +
    document.getElementById('author' + i).innerHTML +
    "\t" + document.getElementById('date' + i).innerHTML);
};
for (i = 0; i < t.length; i++) document.write(t[i] + "<br/>");

参考
購入した電書のリストを管理する(Kindle/Kobo編)

hontoの場合

事前に、My本棚の表示を以下の様に切り替えておいてください
・50冊表示に変更
・本棚形式から一覧形式の表示に切り替え

その後、以下のJavaScriptを実行します。
(URL欄に貼り付け、またはF12を押してブラウザから実行)

javascript: t = [];
for (i = 0; i < 50; i++) {
  o = document.getElementById('dy_030_prdNm[' + i + ']');
  a = document.getElementById('dy_030_athrNm[' + i + ']');
  if (!o) break;
  if (a) {
    t.push("hont\t" + o.innerHTML + "\t" + a.innerHTML);
  } else {
    t.push("hont\t" + o.innerHTML);
  };
};
for (i = 0; i < t.length; i++) document.write(t[i] + "<br/>");

実行イメージ
こうすると

こうなります。

※注意
1ページごとしか実行できないので、全部取得するためには、ページを何回か切り替えてください。。
(ページも自動で進む方法が分かる方がいれば、教えていただきたいです)

3
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3