ほんじゃらねっと

ダイエット中プログラマのブログ

Node.jsでWebサイトの更新チェックを自動化する

f:id:piro_suke:20160501015354j:plain

特定のWebサイトを定期的にチェックして特定のキーワードが含まれていたら

通知してくれる仕組みを1つ覚えておくと色々重宝する。

例えば

会社に社員用Webサイトがあるなら、

(そしてそのサイトがRSSもメール通知も提供してないなら)

そこに「重要」とか「人事」とかのキーワードを含む記事が投稿された時に

通知を受け取れるようにしておけば、

いちいちサイトをチェックしにいかなくても

逃さず確認できる。

また、Webスクレイピングする方法を覚えておけば、

通知を受け取る以外にも、

画面キャプチャの撮影や画像やテキストの収集を

自動化したり、作成したWebシステムの画面テストを行う、

等の応用もしやすくなる。

今回は Node.js + Grunt + cheerio-httpcli を使用して

手軽にWebサイトのデータをチェックする方法を紹介する。

続きを読む

WindowsのタスクスケジューラからGruntスクリプトを起動する方法

f:id:piro_suke:20160422003356j:plain

どうせ自動化するなら完全自動化したいよね、

ということで今回は作成したGruntスクリプトを

Windowsの起動時や毎日の決まった時間に実行できるように

タスクスケジューラに登録する方法を紹介する。

この記事はGruntを実行する環境が整っていることを前提としているので、

未インストールの方は下記の記事を参考にしていただきたい:

blog.honjala.net

続きを読む

一日使い続けるだけで通信速度が低下する古いルーターを毎日再起動させるNode.jsスクリプト

先日iPad miniとiPhone 6sを導入してから、

うちの古いルーターが2日間隔くらいで再起動しないと

通信が遅くなってネットに繋がらなくなるようになった。

どうやら新しいiPadとiPhoneはWi-fi環境だとガシガシ通信するようで、

ルーターのキャパをすぐに超えてしまうみたいだ。

ルーターを新しくすればすぐに解決しそうな話だが、

とりあえず1日1回再起動すれば快適に使えるようなので、

ルーターを再起動するスクリプトを書いてみた。

続きを読む

Node.jsとGruntでフォルダ監視ツールを作る

f:id:piro_suke:20160414001322j:plain

コミュニケーションというのはなかなか難しいもので、

「急いで確認したいから資料ができたら共有フォルダに入れて、すぐ連絡してよ」

と強めに伝えても、

資料はとっくにできてるのに

やれ後で連絡するつもりだっただの、

もうちょっと確認してから連絡するつもりだっただの、

今メール書いてただので、

一本内線をくれるだけで良いのになかなか連絡がもらえないことがある。

そんなストレスフルな行き違いは

「このやろう!」と毎回怒りを爆発させるよりも

ツールを使って解決の仕組みを用意してしまうに限る。

ということで今回は指定したフォルダを監視して、

ファイルが追加されたり更新されたりしたら

自動で通知してくれるスクリプトをつくってみたい。

続きを読む

正規表現を使ったエレガントな置換処理を学びつつ簡易なファイル名一括変換ツールを作る

文字列を検索したりマッチしたものを置換したり、という作業は

技術者が制作・開発する時だけでなく、例えばExcelやWordで文書を編集する際や

Webページ内で目的の文章を探したりする場合にも行うもので、

「作業の効率化」という点では欠かせないものだ。

今回扱う「正規表現」を使った検索・置換については、

標準の機能として備えているツールやテキストエディタも多いが、

プログラマ以外には馴染みの薄いものかもしれない。

(少なくとも私に面倒な変換作業を依頼してくる人たちは間違いなく知らないと思う)

「正規表現」を全く知らない人は、

このつまらなそうな言葉を見ただけでスルーしてしまいそうだが、

使いこなせば大変強力なものであり

プログラマ以外の

パソコンを使用して何かしらの仕事をしている人にとっても

作業効率が劇的に上がること間違いなしの技術なので、

ここで紹介しておきたい。

続きを読む

プログラミングはしたくないけど自動化はしたい人のための、Grunt.jsによる作業自動化入門

前回書いたNode.js入門記事の続き。

blog.honjala.net

前回から引き続き、

いかにプログラムの勉強無しで自動化できることを増やすか、

もとい、

いかに他部署のノンプログラマに自動化ツールを使わせて自分への作業依頼を減らすか、

をマイテーマに少しずつ情報をまとめていく。

Node.jsを紹介しただけでは、「Javascript…難しそう。いつかやるわ。」

となりそうなので、

今回はプログラミング要素最小限で使えるGruntを紹介する!

続きを読む