本の発売日を一覧テーブル化するサイトを作った話


ソースコードはGithubに載せてます

先日 「HonBa~本の探し場~」というサイトを公開したのでそのサイト制作の振り返りをして改善点を見つけていこうぜ!イェイ!的なサムシングです(は?)

今回使ったもの

.python (beautifulSoup4 selenium)

. TypeScript

・HTML

・SCSS

サイトの大まかなフロー

pythonで情報をスクレイピング、CSVで書き出し

TypeScriptでCSVデータを配列化し、テーブルを生成

機能の実装に使ったものの完走と実装中に躓いた点

 TypeScript

TypeScriptは型がやっぱり便利でした。ただ、正直このぐらいの規模の個人開発なら無理して使うこともないのかなと思いました

TypeScriptでのdocument.getElementbyId

TypeScriptを使おうと思ったときに
「すでに作ってあるJSに型を書き足せばOK!」という記事をいくつか見つけやってみるとエラー(泣)

The property ‘hoge' does not exist on value of type 'HTMLElement'

詳しくはこちらの記事がわかりやすかったです。
https://qiita.com/Sekky0905/items/a88721f2af41050c93f2

SCSS

これはものすごく便利でした。これから継続して使っていきたい。
便利だと感じた点は主に
・プログラミング言語ライクなブロック記述ができる

・別ファイルをインポートして一つのCSSとして出力できる

の2点です。別ファイルのインポートは、HeaderやFooterを別ファイルにすると便利でした。

感想と改善点

正直pythonのスクレイピングが一番時間を使いましたがとても楽しかったです。やっぱり何かを開発するのは楽しいですね

改善点としては
・CSVで取得しているが、DBにしたほうがいいのか(詳しい方教えてください)

・SlackやLINEなどに通知を遅れる機能を作ればもっといい感じになるのではないか

・Pythonでのスクレイピングを自動定期化したい。

この3つかなと思います。