※本ソフトの公開・サポートは終了しました。
ホーム > スクリプト作成に関する話題 > Perl、Ruby、Python用サンプルスクリプト

Perl、Ruby、Python用サンプルスクリプト

(目次)

1.はじめに

ここでは、ScirptBrowserKでActivePerl、ActivePython、Rubyのスクリプトのサンプルと、注意点を解説したいと思います。

今回、動作を確認したスクリプト言語のバージョンは、下の通りです。

筆者は各スクリプト言語について精通しておりませんので、各スクリプト言語の使用方法について間違いや改善点などありましたらご指摘ください。よろしくお願いいたします。

2.スクリプトパネルでのサンプルの実行方法

先ず、ここで紹介するサンプルスクリプトをスクリプトパネル上で実行する手順を解説します。

  1. スクリプトパネル上のツールバーの[スクリプト]欄で使用するスクリプトを選択します。
    (注意)Rubyの場合は、[RubyScript]を選択してください。[GlobalRubyScript]は動作しません。
  2. 「実行されるスクリプト」欄に、各スクリプトのサンプルを入力します。このページのサンプルをコピーして下さい。
  3. Ctrl + Enterキーを押すか、スクリプトパネル上のツールバーの[スクリプトの実行]()ボタンをクリックします。するとスクリプトが実行されます。

3.スクリプトファイルに保存してサンプルを実行する方法

ここでは、スクリプトをファイルに保存して実行する手順を解説します。

なお、ScriptBrowserKのスクリプトファイルの拡張子は各スクリプト言語で関連付けられたものを使用します。Windowsに関連付けられていないものは実行されません。
デフォルトの状態でPerlは「.pls」、Pythonは「.pys」、Rubyは「.rb」になると思います。

(注意)ScriptBrowserK Ver3.2.0以前では、Rubyスクリプトファイル(.rb)を実行できません。 Ver3.2.1β3でこの問題に対応しました。

  1. メモ帳などの適当なエディタでスクリプトファイルを作成します。ファイルの中身は、このページのサンプルをコピーしてください。
  2. ファイルを保存します。ファイルの拡張子は各スクリプトの拡張子に設定してください。ファイルを保存する場所は、お気に入りフォルダ下に指定します。すると、お気に入りパネルに作成したスクリプトファイルが表示されます。
  3. お気に入りパネルのスクリプトファイルをクリックするとスクリプトが実行されます。

4.サンプルスクリプトの解説

今回紹介するサンプルスクリプトファイルは全て同じ動作を行うものです。各スクリプト言語のScriptBrowserKのオブジェクトの呼び出し方の違いなどが比較しやすいと思います。

サンプルスクリプトはYahoo!のホームページを開いた状態で実行してください。スクリプトの動作は以下の通りになります。

  1. docwin変数にアクティブなタブのDocumentWindowオブジェクトを代入
  2. Webページ内の「ファイナンス」の文字列を含むアンカー(リンク)をクリックする
  3. doc 変数にアクティブなタブのdocumentオブジェクトを代入
  4. フォームの検索文字列に「松下」を入力
  5. フォームの検索を実行(submit)する

以上です。

5.Perlのスクリプトの例

use encoding 'shiftjis';
use Win32::OLE qw/CP_UTF8/;
Win32::OLE->Option(CP => CP_UTF8);
$docwin = &ActiveDocWin;
&AnchorOfCaption($docwin->document->body, "ファイナンス", 0)->click;
$doc = $docwin->document;
$doc->Forms(1)->Elements("s", 0)->{value} = "松下";
$doc->Forms(1)->submit;

(コメント)

Perlは文字のエンコードの設定方法がよく分りませんでした。上の設定で動作を確認しましたが、正しい設定ではない可能性があります。

また、ScriptBrowserKオブジェクトの記述を省略してメソッドを呼び出す場合「&」を先頭につけて(関数として?)呼び出す必要があるようです。

また、最後から2行目のプロパティへの代入の部分で{value}と記述しないと、動作しませんでした。


6.Rubyスクリプトの例

docwin = @ScriptBrowserK.ActiveDocWin
@ScriptBrowserK.AnchorOfCaption(docwin.document.body, "ファイナンス", 0).click
doc = docwin.document
doc.Forms(1).Elements("s", 0).value = "松下"
doc.Forms(1).submit

(コメント) ScriptBrowserKオブジェクトの記述は省略できないようです。

7.Pythonスクリプトの例

docwin = ScriptBrowserK.ActiveDocWin;
ScriptBrowserK.AnchorOfCaption(docwin.document.body, u"ファイナンス", 0).click();
doc = docwin.document;
doc.Forms(1).Elements("s", 0).value = u"松下";
doc.Forms(1).submit();

(コメント) ScriptBrowserKオブジェクトの記述は省略できないようです。


8.(参考)VBScriptの例

set docwin = ActiveDocWin
AnchorOfCaption(docwin.document.body, "ファイナンス", 0).click
set doc = docwin.document
doc.forms(1).elements("s", 0).value = "松下"
doc.forms(1).submit

9.(参考)JScriptの例

docwin = ActiveDocWin;
AnchorOfCaption(docwin.document.body, "ファイナンス", 0).click();
doc = docwin.document;
doc.forms[1].elements["s"].value = "松下";
docwin = ActiveDocWin;
doc.forms[1].submit();        

以上です。

2007.05.16

Copyright (c) 2011 Akiyoshi Kozuka (http://www.scriptbrowserk.com/)