僕は発展途上技術者

【大人のためのスクラッチ】スクラッチからブラウザを全自動でコントロール - scratch2web

こども向けのプログラミング学習がちょっとしたブームのようだ。

夏休みの自由研究にということだろうか、Amazon の 実用・工作・趣味 の ベストセラー ランキングで小学生からはじめるわくわくプログラミングは上位だし、拙著Raspberry Piではじめる どきどきプログラミング (はじめるプログラミング シリーズ)の方もブログラミングの本としてはそこそこ売れているようだ。両方とも扱っているプログラミング言語はスクラッチだ。

「さあプログラミングを勉強しなさい」ということで、親御さんはこれらの本をこどもに買い与えてはい終わり、というケースが多そうなのだが、ちょっと待って欲しい。スクラッチをこどもだけに使わせておくのはあまりにもったいない。

「え?でもスクラッチってどうせこども向けでしょ」というのは大きな誤解だ。次に多い誤解は、「スクラッチでできることってちょっとしたゲーム作りでしょ。実用的なものでないと大人としてはちょっと…」だ。

スクラッチはゲームを作る以外、実用的なプログラミングだって何でもできる、ということを証明するためにこれから「大人のためのスクラッチ」というシリーズでいくつか例を示していこうと思う。

スクラッチからブラウザを全自動でコントロール



ブラウザを開いてインターネットにつなげ、何らかのページに情報を入力し、ボタンを押すという作業が会社のお仕事の一部になっていることは多いと思う。

そうした作業のなかで、いつも同じ繰り返しになっている部分はないだろうか。毎日ポチポチ手作業でおこなっている操作があるなら、それをプログラムで自動化することで、チリも積もれば何とやら、で節約できる時間は結構なものになるのではないだろうか。

スクラッチでブラウザを全自動でコントロールする方法を以下に紹介しよう。

スクラッチだけではインターネットにつなげることはできないのだが、ruby の watir というライブラリをつかったプログラム(scratch2web と名づけた)を実行しておき、それをコントロールする形で実現してみた。

ブラウザで特定のアドレスを開くには、「goto」という命令をスクラッチから送る。



テキストフィールドに文字を入力するには、「input」という命令を送る。



ボタンを押すには、「click」という命令を送る。



これらを全部組み合わせて、スクラッチのページを開いて「マリオブラザーズ」と検索する操作をスクラッチから自動で行ってみる。



応用すれば、ブラウザでできるほぼどんな操作でもスクラッチから全自動でできる。

突貫で作ったので、ドキュメントが未整備な上にまだ使い勝手が悪いが github に公開しておく。

» scratch2web

順次呼べる命令を増やしていって、普通に使えるツールにしていきたいと思う。

プロフィール

株式会社まちクエスト代表、つくる社LLC代表。

Raspberry Piではじめる どきどきプログラミングを書きました。

Amazonから図書館検索 Libron、iPhoneアプリ ひらがなゲーム かなぶん を作っています。

Twitter @jishiha

最近のエントリー

アーカイブ