概要
くだらない話ですが、所有するコミックのデータベースを作ろうとしてます。
ゴルゴ13は、200冊を超える状況で、「さいとう・たかを」先生が逝去された後も、まだ続いています。
そんなゴルゴ13ですが、ISBNが採用された時期よりも前から出版されているので、ISBNリストを使った書籍情報の検索をしようとしてもISBNが書籍にのっていません。
が、、、、版数が版数なので、ISBNが始まった時期より後に増刷となった場合、古い書籍もISBNが採番されます。
そこで、リイド社のゴルゴ13のページから200冊を超えるゴルゴ13のISBNを取得しようとしてます。
(200冊を超えるISBNのリストがあれば、そこから持っている巻数のISBNを把握すればいい)
リイド社を見てみる
ゴルゴ13にもシリーズがあるので、所有しているシリーズを選択してみます。
なるほど、、、、
ざっくり中を見ると、普通に取り出せそうだ・・・
スクレイピングしてみた
リイド社さん、私個人の目的でソース見てごめんなさい。
golgo13.py
import requests
from bs4 import BeautifulSoup
import os
if __name__ == '__main__':
BASE_URL = "https://www.leed.co.jp/"
FILE_NAME = "golgo13_isbn.csv"
currentPath = os.path.dirname(os.path.abspath(__file__))
filePath = os.path.join(currentPath, FILE_NAME)
for page in range(10):
param = {
"paged": str(page + 1),
"cond":"series",
"s": "ゴルゴ13"
}
with open(filePath, "a") as f:
response = requests.get(BASE_URL, param)
soup = BeautifulSoup(response.text, "html.parser")
if len(soup.find_all("span", class_='search-book-title')) > 0:
for item in soup.find_all("span", class_='search-book-title'):
title = item.text
isbn13url = item.find("a").attrs['href']
isbn13 = isbn13url.replace("https://www.leed.co.jp/", "")
f.writelines(isbn13 + ", " + title + "\n")
else:
break
現在だと、4ページ分の204巻まであります。(スゴイっす)
golgo13_isbn.csv
9784845800018, ゴルゴ13 (1)
9784845800025, ゴルゴ13 (2)
9784845800032, ゴルゴ13 (3)
9784845800049, ゴルゴ13 (4)
9784845800056, ゴルゴ13 (5)
9784845800063, ゴルゴ13 (6)
9784845800070, ゴルゴ13 (7)
9784845800087, ゴルゴ13 (8)
9784845800094, ゴルゴ13 (9)
9784845800100, ゴルゴ13 (10)
9784845800117, ゴルゴ13 (11)
9784845800124, ゴルゴ13 (12)
9784845800131, ゴルゴ13 (13)
・・・
無事、必要なISBNがゲットできたので、所有コミックのデータベースにISBNをまとめて登録。