編集前記

"まとまる前の文章" を "まとめる前" の文章

つくば市のごみ収集カレンダーのjsonファイルをつくるやつをつくった

もう2024年も半ばではあるが。

Tsukuba Garbage Calendar

github.com

リポジトリに含まれる json カレンダーデータは MIT ライセンスでご自由に。

モチベーション

つくば市はごみ収集に少し消極的(個人的意見)で、以下の課題点を感じていた。

  1. 可燃は週2回収集だが、その他は隔週1回
    弊家庭ではビンやカン、スプレー缶、不燃がよく排出される割にいつも回収日を忘れてしまい不便
  2. 毎週でローテしてるわけではなく、週数が多い月は、最終週は回収がなかったりする
  3. 公開データとなっているカレンダーデータが PDF or Excel 形式で、データ的に取り回しが非常に良くない

これらを解消すべく、
A) レアごみ収集日の前日にbotから通知が来るようにしたい
B) そのために元データを json ファイルで持ちたい

という方針をたてた。今回はその B の実装。

つくば市のごみ収集カレンダーデータのつらいところ

データはここから確認できる。
2024年現在、 PDF ファイルと Excel ファイルでオープンデータ提供されている。

www.city.tsukuba.lg.jp

  1. PDF のつらいところ
    PDF なところ

  2. Excel のつらいところ
    Excel なところ
    データの持ち方が独特

つくば市 202503収集カレンダー 鬼のデータ構造
これは 202503_calendar.xlsx からの抜粋*1だが、カラム側にごみ種別が来ているのはいいとして、

  • 備考カラムに「地区名\nふりがな」が入っている
  • カレンダーは地区ごとで固定の割に詳細住所ごとにレコードがある
  • 日付からの逆引きを極限までさせたくないと言わんばかりの構造 (1セルに複数日入っている)
  • Excel ファイルが月別で分かれている

単純に、このファイル自体作りにくくないか...?

データエンジニアリングっぽいことをやっている身としてはつらさが目に染みる。

実装について

特段言及すべき点はない。Python でサクッと書いた。
openpyxlExcel ファイルを読み込み、json に整形しているだけ。
一応来年度以降もExcel ファイルが大きく変わらなければ json を生成できる。

実は、先例で2017年頃に PDF からデータを画像処理し JSON データを生成する tsukuba-gc が実装されている。
PDF を画像解析する荒業を成し遂げている(おそらく当時 Excel さえ無かったのだろう)。

ひとこと

Rye 楽でよいですね。

*1:ref: https://www.city.tsukuba.lg.jp/soshikikarasagasu/seikatsukankyobukankyoeiseika/gyomuannai/2/1000820.html "2024年度版ごみの出し方カレンダー" by つくば市, used under CC BY 4.0 / Modified from original CC BY 4.0 : https://creativecommons.org/licenses/by/4.0/

2023年の抱負に代えて

愛車のポロ号に、これでもかというほどに粗大ごみを詰めて、市のクリーンセンターへと廃棄に向かった。
引っ越し作業である。

およそ年末に終われば御の字と思っていた退去作業は、まさしく予想通り新年を迎えてもなお床が見えず、契約満了日が刻々と迫っている。

投棄を終え受付へと戻り、身軽になった車ごと計量された際、会計を担当してくれたおっちゃんがかけてきた言葉は、630円のお釣りです、ではなく

「今年 は 良い一年になりそうだね」

だった。

咄嗟に出た「え、ありがとうございます、」となんとも粗末な返しは置いておくとして、
にやけ気味のおっちゃんの笑顔と、殊更に強調されていた(ように聞こえた)「今年 "は"」が妙に心に留まり、このエントリをしたためているわけである。

思えば社会人になって5年あまり、広い家に単居したことの弊害は "モノを捨てずともなんとかなること" だった。
人生で初めて買ったラノベシリーズ、友人に譲った前の愛車の古いスタッドレス、昔好きだった飲みかけの酒瓶、解けたは良いものの元に戻せなくなったパズル、いつだか来客に振る舞った生春巻きの皮の残り。
枚挙に暇はないがそういった "所有" が価値だった。

ビュッフェが好きでたくさんの料理を綺麗に盛り付ける選手権が好きだし、古典部なら福部里志の生き方に憧れる。
自分だけの空間を作りこみ、自分を構成するものたちをそばに置いておくのが好きだった。

そんな自分が、引越しに際し、体感7割以上のものを廃棄に回しているわけである。

受付のおっちゃんは、今回のように家庭ごみを自ら持ち込む市民と、毎日のように応対しているのだろう。
搬入される廃棄物は、庭木の枝葉や買い替えの家具、整理された遺品かもしれないし、とってあった思い出の品かもしれない。

「センターの利用が初」の市民が「明らか長年住んでたとこから出たごみ」を「車パンパンに」持ち込んできた時、彼は何を思ったのだろうか。
その市民が「たぶん今回で全部捨てきれそうです(なので次の予約は大丈夫です)」と言った時、何を感じたんだろうか。

その市民の顔を見て、何を感じ取って「今年は良い一年になりそうだね」 と声をかけてくれたんだろうか。

その場ではさらっと聞き流してしまったわけだけど、でも、
もう多分二度と会うことはない名前も知らないおっちゃんの、気まぐれで出ただけかもしれないその一言に情緒を感じて、そしてきっと折に触れてまた思い出すんだろう。

いや、引っ越しの話である。

今回自分でトラックを運転して、弟に手伝ってもらって引っ越した。
プランを練るにあたり、「新居に運ぶ荷物は2tショートトラックに乗るだけ」と最初から決めていた。

2tと聞くとキツい縛りには思えないかもしれないが、家具家電を引き継ぐとなると存外自由にできるスペースは少ない。
なによりもまず用意したのは、45Lゴミ袋50枚セットだった。今、そのセットの2つ目が底をつきかけているわけだが。

漫画・書籍を200冊以上買取サービスに送りつけ、タイヤを中古ショップに持ち込んで、何人かの野口に交換する。
飲みかけの酒何本かは年末年始に家族と飲み、また排水溝に流し、並べていた空き瓶は資源ごみになった。
あとはおよそ可燃か不燃ごみ。何回にも分けて数十袋ぶんの廃棄を出し、そして粗大ごみとして投げてきたものたちは計170kgだった。

自らの手で全て袋に詰め、3階の旧居からちまちま搬出したからこそ、きっとおっちゃんの言葉が、顔が妙に引っかかったのだ。
もちろん、 "こんな苦行のような退去作業二度とやりたくない" という負の感情もあるが、何を隠そう、自分自身良い年になる予感を感じている。

有り体に言って、「モノを捨ててスッキリした」のだ。

この数年で手広くスタンプラリーを回ってきた色々なアクティビティやコンテンツはもちろん今の自分に寄与しているはず。
だけどその一方で、そろそろ方向性定めて丁寧な暮らしをしはじめても良い頃合いなのかもと考えてみている。もう28歳なのだ。

ありがたいことにやりがいのある仕事に恵まれ、ふらっと転居ができるほどには経済的にも余裕が出てきた。
2022年は色々身の回りが変化し、今までとは違う価値観を持つきっかけがいくつもあった。
その2022年は、2023年に何を贈ってくれるのだろうか。
2023年は、どんな年にできるのだろうか。

二度目のさいたまから二度目のつくばへ。通算6年目の生活が始まろうとしている話でした。