[Dd]enzow(ill)? with DB and Python

DBとか資格とかPythonとかの話をつらつらと

Pythonでgulp watchみたいにファイル変更があったらリロードするコマンド作った(pywatcher)

gulpとかは指定したファイルの変更があると、それに応じてアクションを実行してくれる機能がありますね。またbottleやdjangoのDEVサーバ等でもコードの変更を検知して自動でプロセスを再起動してくれる機能があります。

先日作業中に、WEBサーバではないものの常駐型プロセスの開発をするケースがあり、コード書き換えごとに再起動するのが面倒だったので、変更を検知するとプロセスを自動で再起動してくれるコードを書きました。

今回はそれをもう少し整えてPyPIに登録したのでまとめておきます。

続きを読む

みんなのPython勉強会 #33に参加してきた(stapy)

スタッフなのに転職でワタワタしてからなかなか行けてなかったみんなのPython勉強会(stapy)に久々に時間が都合付いたので参加できました。stapyに参加したらLTするというポリシーなので 勉強会参加したら取り敢えず参加記を上げるところから始めよう、的なLTをしてきましたので当然自分でも参加記書いておきます。

続きを読む

scrapyのspiderのテスト(scrapy check / contract)

なんか気がつけば2017年8月から始めたBlogも1万アクセスを突破してました。めでたい。

さて、最近はDjangoよりもScrapyに触ってる事が多いです。結構日本語の情報も増えてきましたが、Django等に比べるとまだまだ利用者が少ないのか情報が少ない部分もあります。

このBlogではScrapyにはじめて触れますが、いきなりテストについてメモ代わりにまとめておきます。ScrapyではSpiderというコンポーネントをクロール対象ごとに作成します。このSpiderのテストをどうするかについてです。

続きを読む

Chrome Extensionのアイコンを動かしたい(chrome.browserAction.setIcon)

最近ちょこちょこChrome Extensionのコードを書いています。メインの処理自体はAPIを叩いて結果を取り出すだけのシンプルなものですが、細部に凝りだすと際限がないですね。

Chrome ExtensionのbrowserActionを使っている場合、常にブラウザの右上にアイコンが表示されますが、これを処理中はアニメーションさせたかったので色々試しました。 ※↓のような動きをしたかったのです。

f:id:denzow:20180218205838g:plain

続きを読む

Djangoのtemplateでifを省略する(yesnoフィルター)

Djangoのtemplateでちょっとしたifを省略する場合の話です。Listを元にDOMノードを作成しているときに、元データに応じてCSSクラスを変更したい場合の話です。以下のようなケースをもう少しきれいに書きたくなったので調べました。

    <ul>
        {% for row in data_list %}
            {% if row.is_active %}
                <li class="active">  <!-- is_activeの場合にactivteクラスを付与したい-->
            {% else %}
                <li class="">
            {% endif %}
            
            {{ row.value }}
        </li>
        {% endfor %}
    </ul>
続きを読む