乗車日記

自転車ときのこ

菌類画の世界など

土曜日は4月開催のラリーに向けてコース整備。

去年の大風台風で倒木が多い。普段来ないコースだけに、倒れると手付かずのまま。人でも限られているので、優先順位をつけて掃除しないと。
帰宅して、一眠りしてから京都駅へ。ちょっとした仕事で新・都ホテルに寄ったあと、駅美術館へ。

小林路子さんの菌類画の世界という展覧会をやっているのです。


内容は素晴らしいの一言に尽きます。きのこと周りの落ち葉などが緻密に描かれています。キノコだけでないところに、共生というかエコシステムというかそう言うメッセージを感じました。木彫りのキノコに彩色したものや、キノコトランプや、キノコ切手などもありました。最後の販売コーナーで、本をたくさん買い込みました。

3月25日までですが、もう一度来ようと思います。

そのあとは、地下鉄で四条へ移動してヴィノス山崎でテイスティングの後、ワイン購入。隣の席に割と高齢の女性が来たと思ったら、ワイン4種類を一気にテイスティングして、すぐさまも一本買って帰って行ったのには驚きました。素敵です。

今日は遅寝して、ぼちぼち自作AIスピーカプログラムの改良。要望を伝えてから動作を行うまでに、割と間ができることがあり、話を聞いているのかどうかわからないので、動作を理解したら「ちゅんちゅん」と鳴くようにすることにしました。それで、文鳥たちの鳴き声を録音しようとしたのですが、いつ鳴くかわからないので、結構苦労しました。なんとか録音して、切り出して、低周波の雑音をとってから実装。やっていてわかったのですが、「ちゅん」 の長さが約0.3秒です。

それから、先日実装した桂川駅に加えて、桂駅の次の電車を教えてくれる機能を追加。JRのは1セルに行き先と時刻が混在していましたが、なんと阪急ではセルがhourごとで、そのhourの列車の行き先と時刻(分)データがまるっと入っています。まあ空白があるので分離できますが。
あと、阪急の時刻表ページは日付では指定できず、自分で平日か土日かの時刻表を選ぶ必要があります。今日が土日かどうかは簡単に判別できますが、祝日は?
調べると、内閣府のページに祝日リストがあり、それをダウンロードすれば良いとのこと。こちらのページに解析プログラムも載っていました。
これで一件落着かと思ったら、なんとこのリスト、振替休日が載っていません。内閣府も不親切です。それで、連続パターンにも対応できる振替休日計算ルーティンを作り、さて試そうと思ったら、内閣府にデータがある2017~2019年には振替は日曜日に祝日が重なるパターンしかないことに気がつきました。バグがあったとしても、その発覚は3年後ぐらいですかね。その前にご退位の件で、祝日リストが変更されそうです。一応毎月1回チェックするように自動スケジュールに入れておきます。

# -*- coding: utf-8 -*-
import pandas as pd
import urllib
import datetime
def get_holidays_list(
    holidays_jpn_url="http://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv",column_name=u'国民の祝日月日',encoding="SHIFT-JIS",update_csv=False):
    file_name ="/home/pi/scripts/"+holidays_jpn_url.split("/")[-1]
    # csv保存
    if update_csv:
        urllib.urlretrieve(holidays_jpn_url, file_name)
    holidays_df = pd.read_table(file_name, delimiter=",", encoding=encoding)
#    print(holidays_df)
    return(holidays_df[column_name].tolist())

def get_holidays_datetime(
        holidays_jpn_url="http://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv",column_name=u"国民の祝日月日",encoding="SHIFT-JIS",update_csv=False):
    holidays_list = get_holidays_list(holidays_jpn_url, column_name, encoding,update_csv)
    return([datetime.datetime.strptime(h, "%Y-%m-%d") for h in holidays_list])

def isHoliday(date):
    list=get_holidays_datetime()
    if date.weekday() == 5 or date.weekday()==6:
        return(True)
    for index,holiday in enumerate(list):
#        print(holiday,today)
        if date==holiday:
            return(True)
            break
        elif holiday.weekday()==6:
            furikae=holiday+datetime.timedelta(days=1)
            if furikae==date:
                return(True)
                break
            if index+1<len(list):
                for index_ in range(index+1,len(list)):
                   if furikae==list[index_]:
                       furikae=furikae+datetime.timedelta(day=1)
                       if furikae==date:
                           return(True)
                           break
                   else:
                       break
    return(False)

if __name__=='__main__':
    get_holidays_list(update_csv=True)

それから、基板剥き出しだったマイクユニットを箱に入れました。


このマイク、電源ラインを緑色の線でつないでいたのですが、色が良くなかったようです。

文鳥たちが豆苗か何かだと思って齧ったり、引っ張ったり。朝は大丈夫でも、家に帰って見てみるとマイクの電源線が基板から抜けていることがしばしば。とりあえずこれで抜けることはないでしょう。