小平のゴミ収集
2019年4月から有料化とともに収集方法も変わりました。
で。。 これまで、ボランタリーに更新してくれていた5374.jp とかで、見てたんですが。。たぶん収集カレンダーが紙かPDFかアプリでしか見れなくなって、データが取得できなくなって5374.jpを維持できなくなったんでしょうかね?
小平市のHPの作りも、オープンデータも。。。こういうところもデータフレンドリーじゃないですね。
イベントもそうなんですが、こういうカレンダー系のものは、ical形式で出してもらうと、GoogleカレンダーとかiPhoneのカレンダーとかに取り込めて便利なんですけどねぇ~
アプリは。。というと。。 ごらんの通り低評価。。 実際使ってみたけど、起動が遅くて使えない(笑)
で。。どこかにデータないかな?って。。 探してみたら。。
東京都のオープンデータカタログでは、品川区だけしかないですね。。残念。。
って思っていたら。。
あるじゃない!!
53cal
【地区割り】別にリンクはりますね
A地区 | 中島町・たかの台・小川町1丁目・栄町・小川西町 |
B地区 | 小川町2丁目・小川東町・学園東町・仲町 |
C地区 | 上水新町・上水本町・津田町・学園西町 |
D地区 | 美園町・天神町・大沼町・花小金井 |
E地区 | 上水南町・喜平町・回田町・御幸町・鈴木町・花小金井南町 |
ところで。。これにどうやってデータを移し替えているんでしょう??(笑)これ手入力??もし自治体が情報を流しているのなら、僕らにも情報がほしいです。iCal形式にして、公開しますよ~
53calは、無料でメール配信もしてくれます。当日の朝6時か、前日の夕方6時かどちらかが選べます。
これ便利です。。
CivicTech的なスクレイピング
Python3とBeautifulsoupというライブラリを使って最新の月のカレンダーを取り出してみましょう(鈴木町のやつを取り出しています。URLを自分のエリアの情報に変えるとどこでも見えますよ~)
コードは、こんな感じです。(インデントが崩れているので、Google colabで見てもらった方がいいかな?)
import urllib.request from bs4 import BeautifulSoup html = urllib.request.urlopen("http://www.53cal.jp/areacalendar/?city=1130130&area=1130130112") soup = BeautifulSoup(html)
import csv table = soup.findAll("table", {"class":"calbox"})[0] rows = table.find_all("tr") # print(table) #print(rows) with open("egomi.csv", "w", encoding='utf-8') as file: writer = csv.writer(file) for row in rows: csvRow = [] for cell in row.findAll(['td', 'th']): csvRow.append(cell.get_text().replace('\n','')) writer.writerow(csvRow) print(csvRow)
Google Colab でも、Githubでも 共有します。
これをすると、CSVファイルができます。こんな感じの出力
‘ | ” | ” | ” | ” | ” | ” |
‘ | ‘燃やすごみ’ | ‘ビン・有害性資源・金属製のなべ等’ | ‘段ボール、新聞紙’ | ‘燃やすごみ’ | ‘プラスチック製容器包装’ | ” |
‘ | ‘燃やすごみ’ | ‘燃やさないごみカン’ | ‘古布類、ふとん、雑誌(本)・雑がみ、シュレッダーくず’ | ‘燃やすごみ’ | ‘プラスチック製容器包装ペットボトル’ | ” |
‘ | ‘敬老の日燃やすごみ’ | ‘ビン・有害性資源・金属製のなべ等’ | ‘段ボール、新聞紙’ | ‘燃やすごみ’ | ‘プラスチック製容器包装’ | ” |
‘ | ‘秋分の日燃やすごみ’ | ‘カン’ | ‘古布類、ふとん、雑誌(本)・雑がみ、シュレッダーくず’ | ‘燃やすごみ’ | ‘プラスチック製容器包装ペットボトル’ | ” |
‘ | ‘燃やすごみ’ | ‘\xa0’ | ‘\xa0’ | ‘\xa0’ | ‘\xa0’ | ‘\xa0’ |
これを、replace( ‘\xa0’,”)とか入れたり、最初の行に曜日を入れると。。
日 | 月 | 火 | 水 | 木 | 金 | 土 |
‘燃やすごみ’ | ‘ビン・有害性資源・金属製のなべ等’ | ‘段ボール、新聞紙’ | ‘燃やすごみ’ | ‘プラスチック製容器包装’ | ||
‘燃やすごみ’ | ‘燃やさないごみカン’ | ‘古布類、ふとん、雑誌(本)・雑がみ、シュレッダーくず’ | ‘燃やすごみ’ | ‘プラスチック製容器包装ペットボトル’ | ||
‘敬老の日燃やすごみ’ | ‘ビン・有害性資源・金属製のなべ等’ | ‘段ボール、新聞紙’ | ‘燃やすごみ’ | ‘プラスチック製容器包装’ | ||
‘秋分の日燃やすごみ’ | ‘カン’ | ‘古布類、ふとん、雑誌(本)・雑がみ、シュレッダーくず’ | ‘燃やすごみ’ | ‘プラスチック製容器包装ペットボトル’ | ||
‘燃やすごみ’ |
のようなカレンダーができますね。
これをiCal形式にすると。。Googleカレンダーに読み込めます。
やっちゃおうかな?と思ったけど。。 違反かもしれないので。。このあたりで(笑)
自分用に使う分には、いいかな??
追記 2019.9
http://www.53cal.jp/areacalendar/?city=1130130&area=1130130112&yy=2020&mm=9