at backyard

Color my life with the chaos of trouble.

PocketからExportしたHTMLデータをCSVに変換するツールをGoで書いて、Notionにimportした

私は普段からPocketを利用している。後でチェックしたいと思ったものはなんでもPocketに放り込んでおり、Pocket経由で見返すということをしている。
ちなみに読んだ記事をアーカイブする、とかそういうことは面倒なのでしていない。 Pocketに放り込んだら、あとは放置という非常に怠惰な管理の仕方をしている。そもそも管理と言えないようレベルかもしれない。

最近Pocketの中身をNotion側で検索したいと思うようになった。

普段Notionをメインのメモアプリとして利用しているのだが、「あ、あのときメモったやつ、Notionに記載していたか、それともPocketに入れていたか、どっちだったっけ?」と思うようなことが時折発生していたので、Pocket側で記録したものは全てNotion側の検索に引っかかるようにしたいと考えた。

そこでPocketのエクスポート機能を用いて吐き出したHTMLファイルをCSV形式に変換し、Notionにimportすることを思いついた。
※ちなみにPocketのエクスポート機能については以下を参照されたし

help.getpocket.com

エクスポートしたHTMLファイルをそのままNotion側にインポートすることも可能だったが、Pocketでエクスポートしたデータにはページタイトルが入っていないものが相当数あった。

Notionの検索インデックスには当然ページタイトルを載せたいと考えていたため、これではせっかくエクスポートしたデータは使い物にならない状態となっていた。

というわけで、エクスポートしたHTMLデータ内でページタイトルが入っていないものについてはページタイトルを取得してから、エクスポートデータ自体をCSV形式に変換するツールをGoで書いた。
(ちなみにとりあえず動けば良し!的なノリで書いているので、後日コードはもう少し整理するかもしれない)

github.com

これでページタイトルも込みでCSV形式のエクスポートデータが作成されるので、あとはこれをNotionにインポートすれば、ページタイトルで検索ができるようになる。

ちなみにCSV形式でimportしたデータはNotion側で自動的にテーブル構造化されるので見やすいのも良い。

吐き出したPocketデータは全てアーカイブか、削除すれば完璧...と思ったら、Pocket内のデータをすべて一度に削除する方法はないようだ...

help.getpocket.com

Pocketに保存したデータが8,000~9,000ぐらいあるので、手作業で全て削除は諦めた。まあ、そこらへんは今後も適当に管理していくか
(結局Pocket自体はちゃんと整理しきれていない)