IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ドヴァの特許一覧

<>
  • 特許-情報処理装置、制御方法及びプログラム 図1
  • 特許-情報処理装置、制御方法及びプログラム 図2
  • 特許-情報処理装置、制御方法及びプログラム 図3
  • 特許-情報処理装置、制御方法及びプログラム 図4
  • 特許-情報処理装置、制御方法及びプログラム 図5
  • 特許-情報処理装置、制御方法及びプログラム 図6
  • 特許-情報処理装置、制御方法及びプログラム 図7
  • 特許-情報処理装置、制御方法及びプログラム 図8
  • 特許-情報処理装置、制御方法及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-26
(45)【発行日】2022-10-04
(54)【発明の名称】情報処理装置、制御方法及びプログラム
(51)【国際特許分類】
   G06F 40/12 20200101AFI20220927BHJP
   G06F 3/0484 20220101ALI20220927BHJP
   G06F 40/14 20200101ALI20220927BHJP
【FI】
G06F40/12
G06F3/0484
G06F40/14
【請求項の数】 7
(21)【出願番号】P 2019162521
(22)【出願日】2019-09-06
(65)【公開番号】P2021043479
(43)【公開日】2021-03-18
【審査請求日】2021-01-12
(73)【特許権者】
【識別番号】511251685
【氏名又は名称】株式会社ドヴァ
(74)【代理人】
【識別番号】240000327
【弁護士】
【氏名又は名称】弁護士法人クレオ国際法律特許事務所
(72)【発明者】
【氏名】土橋 整
(72)【発明者】
【氏名】清水 誉
(72)【発明者】
【氏名】鄒 曉明
(72)【発明者】
【氏名】ド チョン トゥ
【審査官】滝谷 亮一
(56)【参考文献】
【文献】特開平08-087495(JP,A)
【文献】特開2018-205897(JP,A)
【文献】米国特許出願公開第2014/0245126(US,A1)
【文献】Web開発でよく使う、特に使えるChromeデベロッパー・ツールの機能,日本,株式会社デジタルアドバンテージ,2014年10月28日,[2022年2月7日検索],インターネット<URL:https://www.buildinsider.net/web/chromedevtools/01>
【文献】RPA総合カタログ Autoジョブ名人 Autoブラウザ名人 Autoメール名人,日本,ユーザックシステム株式会社,2019年01月23日,p.1-6
【文献】佐藤 歩,[詳解] Chrome Developer Tools Web開発を加速する!,WEB+DB PRESS,日本,(株)技術評論社,2015年11月25日,第89巻,p.10-17
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/12
G06F 3/0484
G06F 40/14
(57)【特許請求の範囲】
【請求項1】
構造化文書に含まれる複数の要素が配置されたウェブページを表示するウェブブラウザを備え、ロボット動作及びコマンドの組が実行順に配列されたシナリオデータに基づいて、RPAを実行するための情報処理装置であって、
前記ロボット動作及び前記コマンドの入力をそれぞれ受け入れ、前記ロボット動作及び前記コマンドの組を、実行順に配列したシナリオデータを作成するシナリオ処理部を備え、
前記ウェブブラウザは、
ポインティングデバイスに対するユーザの操作に応じて前記ウェブページ上で移動するカーソルの位置座標を取得し、取得した前記位置座標に対応する前記要素をリアルタイムで解析し、抽出可能な識別子を取得する識別子取得部と、
前記ウェブページを表示するとともに前記識別子取得部が取得した前記位置座標に対応する前記要素のデータを、前記カーソルの位置にリアルタイムで前記ウェブページに重畳して表示するウェブページ表示部と、
前記ユーザによる前記ポインティングデバイスのワンクリック操作の入力を受けて、取得した前記識別子の一覧を前記ウェブページ上に重畳して表示する識別子一覧表示部と、
前記一覧の中から前記ユーザによる前記ポインティングデバイスのワンクリック操作により選択された前記識別子に対応する前記要素のデータをクリップボードに保存するデータ保存部と、を備え
前記シナリオ処理部は、前記データ保存部により前記クリップボードに保存された前記データを、前記ロボット動作又は前記コマンドとして受け入れ、前記シナリオデータを作成する
ことを特徴とする情報処理装置。
【請求項2】
前記ウェブページは、前記要素を解析して前記識別子を取得するモードに切り替えるためのボタンを有し、前記ボタンの操作の入力を受けたときに、前記ユーザからの前記識別子の取得指示があったとして、前記識別子取得部が、前記ウェブページ上で移動するカーソルの位置座標を取得し、取得した前記位置座標に対応する前記要素をリアルタイムで解析し、抽出可能な前記識別子を取得し、前記ウェブページ表示部が、前記要素のデータを、前記カーソルの位置にリアルタイムで前記ウェブページに重畳して表示し、前記識別子一覧表示部が、取得した前記識別子の前記一覧を前記ウェブページ上に重畳して表示し、前記データ保存部が、前記一覧の中から前記ユーザにより選択された前記識別子に対応する前記要素のデータをクリップボードに保存することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記要素のデータ形式は、文字列、URLリンク、画像及び表の少なくとも何れかを含み、前記識別子は、ID、XPATH、Name及びCSSの少なくとも何れかを含むことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記要素のデータ形式が表である場合、前記データ保存部は、前記ユーザによる前記ポインティングデバイスのワンクリック操作の入力を受けて前記表のデータをすべて取得しCSV形式に変換して、前記クリップボードに保存することを特徴とする請求項1~3のいずれか一項に記載の情報処理装置。
【請求項5】
前記シナリオ処理部は、作成した前記シナリオデータに基づいて、実行順に配列された前記コマンドを前記情報処理装置において実行させることを特徴とする請求項1~4のいずれか一項に記載の情報処理装置。
【請求項6】
構造化文書に含まれる複数の要素が配置されたウェブページを表示するウェブブラウザを備え、ロボット動作及びコマンドの組が実行順に配列されたシナリオデータに基づいて、RPAを実行する情報処理装置の制御方法であって、
ポインティングデバイスに対するユーザの操作に応じて前記ウェブページ上で移動するカーソルの位置座標を取得し、取得した前記位置座標に対応する前記要素を解析し、抽出可能な識別子を取得する識別子取得工程と、
前記ウェブページを表示するとともに前記識別子取得工程で取得した前記位置座標に対応する前記要素のデータを、前記カーソルの位置にリアルタイムで前記ウェブページに重畳して表示するウェブページ表示工程と、
前記ユーザによる前記ポインティングデバイスのワンクリック操作の入力を受けて、取得した前記識別子の一覧を前記ウェブページ上に重畳して表示する識別子一覧表示工程と、
前記一覧の中から前記ユーザによる前記ポインティングデバイスのワンクリック操作により選択された前記識別子に対応する前記要素のデータをクリップボードに保存するデータ保存工程と、
前記ロボット動作及び前記コマンドの入力をそれぞれ受け入れ、前記ロボット動作及び前記コマンドの組を、実行順に配列したシナリオデータを作成するシナリオ処理工程と、
を有し、
前記シナリオ処理工程では、前記データ保存工程により前記クリップボードに保存された前記データを、前記ロボット動作又は前記コマンドとして受け入れ、前記シナリオデータを作成する工程を含む
ことを特徴とする制御方法。
【請求項7】
請求項6に記載の制御方法を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブブラウザを備える情報処理装置、制御方法及びプログラムに関するものである。
【背景技術】
【0002】
近年、インターネットを介してサーバにアクセスし、ウェブページを表示して様々な情報を取得することが可能となった。これらのウェブページはHTML(Hyper Text Markup Language)、XHTML(Extensible Hyper Text Markup Language)といった構造化言語(マークアップ言語)で記述された構造化文書で表現される。この構造化文書は、ウェブブラウザと呼ばれるソフトウエアにより解析され、ディスプレイに表示される。また、ウェブページ内の一部の領域をマウス等で範囲選択することで、要素単位又は任意の領域のデータをコピーしたり、画像として印刷したりすることができる(例えば、特許文献1参照)。
【0003】
ところで、RPAソフトウエアと呼ばれる、コンピュータ等の情報処理装置が実行可能なコマンドを定められた実行順に従って情報処理装置に実行させるソフトウエアが知られている(例えば非特許文献1参照)。
【0004】
ウェブページは、このRPAソフトウエア等のような外部プログラムによって、データ処理や操作が自動化されることがある。この自動化の必須条件として、ウェブページ内の自動化対象の要素の識別子が、外部プログラムに事前に登録されている必要がある。このため、情報処理装置のオペレータ等が自動化の事前作業として対象の要素を探し、その要素のデータ形式を把握し、その識別子をウェブブラウザから抽出し、外部プログラムに転記する必要がある。
【0005】
しかしながら、ウェブページは文字、画像、ボタン、表、記入欄など、様々な要素から構成され、それぞれの要素には様々なデータ形式や識別子 が存在する。例えば、データ形式としては「文字列」、「URL」、「表」等が挙げられ、識別子としては「ID」、「XPATH」、「Name」等が挙げられる。このため、要素のデータ形式を把握し、その識別子を構造化文書から抽出し、外部プログラムに転記して連係させることは、外部プログラムでの動作検証等も含め、作業に多大な手間がかかっていた。
【先行技術文献】
【非特許文献】
【0006】
【文献】“RPAソリューション Windows操作ロボット「WinActor」|NTTデータ”,[online],[平成30年10月10日検索],インターネット<URL:http://www.nttdata.com/jp/ja/lineup/winactor/index.html>
【特許文献】
【0007】
【文献】特開2010-286903号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
そこで、本発明は、ウェブページの各要素を構成する、あらゆるデータ形式や識別子を簡易的に確認及び抽出し、外部プログラムとの容易な連携を実現することが可能な情報処理装置、制御方法及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【0009】
前記目的を達成するために、本発明の情報処理装置は、構造化文書に含まれる複数の要素が配置されたウェブページを表示するウェブブラウザを備えた情報処理装置であって、前記ウェブブラウザは、前記ウェブページ上でユーザにより指定された前記要素を解析し、抽出可能な識別子を取得する識別子取得部と、取得した前記識別子の一覧を前記ウェブページ上に重畳して表示する識別子一覧表示部と、前記一覧の中から前記ユーザにより選択された前記識別子に対応する前記要素のデータをクリップボードに保存するデータ保存部と、を備えたことを特徴とする。
【発明の効果】
【0010】
このように構成された本発明の情報処理装置では、識別子取得部が、ウェブブラウザの構造化文書を解析して、ウェブページ上でユーザにより指定された要素を抽出し、抽出可能な識別子を取得する。識別子一覧表示部が、取得した識別子の一覧をウェブページ上に重畳して表示する。よって、ユーザは選択可能な識別子を容易に把握できる。そして、一覧の中からユーザが識別子を選択すると、データ保存部が、選択された識別子に対応する要素のデータを、様々なアプリケーションが共有できるクリップボードに保存する。このクリップボードに保存されたデータを、外部プログラムが利用できる。
【0011】
このようにすることで、ウェブページの各要素を構成する、あらゆるデータ形式や識別子を簡易的に確認及び抽出し、外部プログラムとの容易な連携を実現することが可能となる。
【図面の簡単な説明】
【0012】
図1】本発明の実施の形態である、ウェブブラウザを備えた情報処理装置の概略構成を示すブロック図である。
図2】ウェブブラウザにより表示装置に表示される画面の一例であり、初期画面が表示された状態を示す。
図3】ウェブブラウザにより表示装置に表示される画面の一例であり、指定されたウェブページが表示された状態を示す。
図4】ウェブブラウザにより表示装置に表示される画面の一例であり、クリックによりエレメント調査モードボタンが選択された状態を示す。
図5】ウェブブラウザにより表示装置に表示される画面の一例であり、ウェブページ上に、カーソル位置の識別子が重畳して表示された状態を示す。
図6】ウェブブラウザにより表示装置に表示される画面の一例であり、ウェブページに識別子抽出メニューが重畳して表示された状態を示す。
図7】ウェブブラウザにより表示装置に表示される画面の一例であり、識別子抽出メニューで「XPATH」が選択された状態を示す。
図8】ウェブブラウザがクリップボードにコピーしたデータを、シナリオソフトウエアに転記した状態を示すイメージ図である。
図9】実施の形態である情報処理装置での動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、この発明の実施の形態を図面に基づいて説明する。図1は、本発明の実施の形態である、ウェブブラウザを備えた情報処理装置の概略構成を示す機能ブロック図である。
【0014】
本実施の形態である情報処理装置1は、パーソナルコンピュータ、サーバ、スマートフォン、タブレット端末等の情報処理可能な装置である。情報処理装置1は、制御部100、記憶部110、通信部140、入力I/F(インタフェース)150及び出力I/F160を有する。
【0015】
制御部100は、情報処理装置1全体の制御を行う。制御部100はCPU、FPGAなどのプログラマブルロジックデバイス、ASIC等の集積回路に代表される演算素子を有する。
【0016】
記憶部110は、ハードディスクドライブ等の大容量記憶媒体やROM、RAM、フラッシュメモリ等の半導体記憶媒体などの記憶媒体を有する。記憶部110には、制御部100における各種動作の際に用いられる各種データが一時的または非一時的に格納される。
【0017】
記憶部110は、クリップボード111を備える。このクリップボード111は、制御部100が利用可能な共有メモリの領域からなる。クリップボード111には、種々のアプリケーションで利用されるデータが記憶される。
【0018】
また、記憶部110には、オペレーティングシステム112、ウェブブラウザソフトウエア113、シナリオソフトウエア114、アプリケーションソフトウエア115が格納されている。この他にも、記憶部110には各ソフトウエアが参照するパラメータ、シナリオソフトウエア114が使用するシナリオデータ(ロボット動作及びコマンドの組が情報処理装置1の実行順に配列されたデータ)等の各種データも格納されている。
【0019】
オペレーティングシステム112は、情報処理装置1全体の動作を制御し、また、情報処理装置1に対する入出力制御を行うソフトウエアである。また、オペレーティングシステム112には、異なるアプリケーションの間でデータの受け渡しを可能にするクリップボードと呼ばれる機能が備わっている。
【0020】
ウェブブラウザソフトウエア113は、HTML、XHTMLといった構造化言語(マークアップ言語)で記述された構造化文書を解析して、複数の要素が配置されたウェブページの表示や操作を可能とするソフトウエアである。ウェブブラウザソフトウエア113は、情報処理装置1により実行されることで、後述のウェブブラウザ120として機能する。
【0021】
シナリオソフトウエア114は、RPAソフトウエアであり、ロボット動作及びコマンドの組を、実行順に配列したシナリオデータを作成し、このシナリオデータに基づいて、実行順に配列されたコマンドを情報処理装置1において実行させるソフトウエアである。シナリオソフトウエア114は、情報処理装置1により実行されることで、後述のシナリオ処理部130として機能する。アプリケーションソフトウエア115としては、例えば、ワードプロセッシングソフトウエア、表計算ソフトウエア等が挙げられる。
【0022】
オペレーティングシステム112は、情報処理装置1の起動時に制御部100により実行される。オペレーティングシステム112が実行された状態で、情報処理装置1を操作するユーザがウェブブラウザソフトウエア113やシナリオソフトウエア114の実行を指示することで、これらのソフトウエアが実行される。これにより、情報処理装置1は図1に示すような機能構成を備えたものとなる。なお、ウェブブラウザソフトウエア113やシナリオソフトウエア114はオペレーティングシステム112の起動後に自動的に実行されるように設定してもよい。
【0023】
通信部140は、CPUやチップセットが有する通信制御機能、及びLANチップ等からなる。通信部140は、インターネット等の通信ネットワーク4を介してサーバ5に接続されている。情報処理装置1は、通信部140の制御によりサーバ5にアクセスし、このサーバ5から構造化文書を取得する。
【0024】
入力装置2は、例えばキーボード、ポインティングデバイス等からなる。ポインティングデバイスとしては、例えば、マウス、タッチパネル、ペンタブレット、タッチパッド、トラックパッド、トラックボール、ジョイスティック等が挙げられる。入力装置2は、情報処理装置1のユーザからの操作入力に基づいて、操作入力信号を情報処理装置1に送出する。入力I/F150は、CPUやチップセットが有するインタフェース機能、及びインタフェース用チップ等からなり、入力装置2からの操作入力信号を制御部100に送出する。
【0025】
表示装置3は、例えば液晶ディスプレイ等からなる。表示装置3は、ウェブブラウザ120やシナリオ処理部130からの表示制御信号に基づいて、所定の表示画面を表示する。出力I/F160は、CPUやチップセットが有するインタフェース機能、及びインタフェース用チップ等からなり、ウェブブラウザ120やシナリオ処理部130からの表示制御信号を表示装置3に出力する。
【0026】
以下、図1に基づいて、制御部100の機能を説明する。制御部100は、ウェブブラウザ120、シナリオ処理部130を備える。
【0027】
ウェブブラウザ120は、HTMLページやXTMLページといったウェブページの表示や操作を実行する。本実施の形態では、ウェブブラウザ120によって表示されるウェブページのデータ処理や操作が、RPAソフトウエアであるシナリオ処理部130によって自動化されるようになっている。
【0028】
自動化対象の操作としては、主に、「入力操作」と「ページ出力の抽出」がある。「入力操作」としては、例えば、リンク(URL)のクリック、文字入力、ドロップダウン選択等が挙げられる。「ページ出力の抽出」としては、文字列抽出、表形式データ抽出、画像データ抽出、リンク先URL抽出等が挙げられる。
【0029】
いずれの操作も、シナリオ処理部130等の外部プログラムで自動化する場合、ウェブページの自動化対象の要素の「識別子」を知る必要がある。そして、自動化の必須条件として、ウェブページ内の自動化対象の要素の識別子を、外部プログラムに事前に登録する必要がある。従来は、自動化の事前作業として、ユーザが対象の要素を探し、その要素のデータ形式を把握し、その識別子を構造化文書から抽出し、外部プログラムに転記するのに多大な手間がかかっていた。公知のウェブブラウザには、識別子を調べる機能が内蔵されてはいるが、抽出できる識別子が限られていた。
【0030】
このため、本実施の形態のウェブブラウザ120は、構造化文書の要素を解析して識別子を抽出し、識別子の一覧を表示し、ワンクリックによる識別子の選択、さらには表や画像などの出力データをワンクリックで模擬的に抽出することを可能とし、シナリオ処理部130との連携を円滑に行うことを可能とした。
【0031】
すなわち、本実施の形態のウェブブラウザ120は、構造化文書取得部121、ウェブページ表示部122、識別子取得部123、識別子一覧表示部124、データ保存部125として機能する。
【0032】
構造化文書取得部121は、ユーザによる入力装置2からのURLの入力に従って、通信部140を介してサーバ5にアクセスし、指定されたウェブページの構造化文書を取得する。ウェブページ表示部122は、取得した構造化文書を解析して、ウェブページを表示装置3に表示させる。
【0033】
ウェブページは、文字、画像、ボタン、表、記入欄など、様々な要素から構成される。それぞれの要素には様々なデータ形式や識別子が存在する。データ形式としては、例えば、「文字列」、「URL」、「表」等が挙げられるが、これらに限定されるものではない。識別子としては、例えば、「ID」、「XPATH」、「Name」、「CSS」、「URL」等が挙げられるが、これらに限定されるものではない。また、構造化文書に含まれる要素の表示スタイルを指定する「CSS」(Cascading Style Sheet)が、構造化文書内に指定されている。この「CSS」も、識別子として抽出対象となる。
【0034】
例えば、ウェブページ表示部122は、図2図3に示すような画面を表示装置3に表示する。図2はウェブブラウザ120が起動したときの初期画面であり、図3は選択された所定のウェブページが表示された画面である。これらの画面には、ウェブページが表示される表示領域10、ウェブページ切り替え用の戻るボタン11、進むボタン12、更新ボタン13、アドレス入力領域14、ウィンドウの最小化ボタン15、最大化ボタン16、閉じボタン17が配置されている。さらには印刷ボタンや印刷プレビューボタン等、一般的なウェブブラウザが有するボタン、メニュー、アイコン等が配置されていてもよい。
【0035】
さらに、各画面には、本実施の形態のウェブブラウザ120は、ウェブページの各要素(エレメント)を解析して識別子を取得するモード(以下、「エレメント調査モード」という。)に切り替えるためのエレメント調査モードボタン18が配置されている。このエレメント調査モードボタン18が操作されると、識別子取得部123、識別子一覧表示部124及びデータ保存部125による処理が実行される。これに対して、エレメント調査モードボタン18が未操作のとき、又はエレメント調査モード中に再度操作されたときは、要素の解析や識別子の取得を行わず、通常のウェブページの表示や操作のみを行う。このようなモードを、以下、「通常モード」という。
【0036】
識別子取得部123は、ウェブページ上でユーザにより指定された要素を解析し、抽出可能な識別子を取得する。具体的には、ウェブページ上でユーザが所望の要素の位置にマウスカーソルを移動させると、識別子取得部123は、このマウスカーソルのウェブページ上での位置座標を取得し、この位置座標に基づいて、構造化文書を解析して対応する要素を検出し、この要素を解析して、識別子を取得する。このとき、ウェブページ表示部122は、識別子取得部123で抽出した識別子(要素)のデータを記載した識別子表示欄20を、ウェブページに重畳して表示する(図5参照)。
【0037】
このように、本実施の形態では、ウェブページ上でユーザがマウスカーソルを移動させるだけで、マウスカーソルが位置する要素を取得し、表示可能となっているが、これに限定されることはない。例えば、ユーザがウェブページ上で左クリック操作をしたときに、クリックされた位置の座標を取得して、対応する要素を取得し、表示するようにしてもよい。
【0038】
識別子一覧表示部124は、識別子取得部123で取得した、データを抽出し得る識別子の一覧(以下、「識別子抽出メニュー」という。)をウェブページ上に重畳して表示する。具体的には、ウェブページの所定の要素上で、マウスの右クリックがされたときに識別子抽出メニュー21(図6参照)を表示する。
【0039】
データ保存部125は、識別子抽出メニュー21上で、例えばユーザがマウスの左クリックすることにより選択された識別子のデータを、クリップボード111にコピー(保存)する。このため、クリップボード111のデータを、所定の領域にペーストするだけで簡単に、RPAソフトウエア等の外部プログラムに転記することができる。
【0040】
ところで、特許文献1のような従来技術では、要素を指定してコピー等するときには、ウェブページ上の抽出対象の文字列、表、図形等の要素を、マウスのドラッグ&ドロップ機能等によって領域指定し、コピーする必要があり、作業に手間がかかっていた。
【0041】
これに対して、本実施の形態では、構造文書を解析して要素を抽出し、抽出した要素を解析して、当該要素から抽出し得る識別子を取得しているため、領域指定等を行う必要がない。ユーザが識別子抽出メニュー21上で識別子を選択するだけで、データ保存部125によって当該識別子に係るデータをすべてクリップボード111にコピーすることができる。
【0042】
また、RPAソフトウエアでは、HTMLページから表のデータをまるごとCSV形式でコピーし、表計算ソフトウエアに一括転記する場合もある。このような操作の自動化用のシナリオデータを作成する際に、実際に抽出されるCSVの形式を事前に確認する必要もある。
【0043】
このため、本実施の形態では、選択された要素のデータ形式が「表」である場合、データ保存部125は、表のデータをすべて取得しCSV形式に変換して、クリップボード111にコピーする。よって、クリップボード111にコピーされたデータを表計算ソフトウエア上等でペーストすることで、表の内容を簡易に確認することができる。
【0044】
次に、シナリオ処理部130の機能の概略を説明する。シナリオ処理部130は、入力装置2を介してユーザ入力したロボット動作及びコマンドの入力を、入力I/F150を介して受け入れる。
【0045】
そして、シナリオ処理部130は、受け入れたロボット動作及びコマンドの組を、情報処理装置1の実行順に配列したシナリオデータを作成し、記憶部110へ格納する。また、シナリオ処理部130は、作成したシナリオデータに基づいて、実行順に配列されたコマンドを情報処理装置1において実行させる。このとき、シナリオ処理部130は、コマンドに応じて、当該コマンドをオペレーティングシステム112又は所定のアプリケーションソフトウエア115において実行させる。
【0046】
また、シナリオ処理部130は、ウェブブラウザ120によるウェブページの表示、操作を自動化する機能も備えており、ユーザによるロボット動作及びコマンドの入力に応じて、自動化のためのシナリオデータを作成する。例えば、シナリオデータに「ページ内の識別子が『//*[@ asrblogo”]/a/img』の要素をクリック」とのコマンド(命令)を設定すれば、シナリオ処理部130は、シナリオデータ実行の際に、この条件に該当する要素をクリックする。また、シナリオデータに、「ドロップダウンメニューアイテムのNameが『default』の要素を選択」とのコマンドを設定すれば、シナリオ処理部130は、シナリオデータ実行の際に、この要素を選択する。
【0047】
この自動化用のシナリオ作成の際に、シナリオ処理部130は、ユーザによる手入力等に代えて、ユーザの指定に応じてウェブブラウザ120のデータ保存部125がクリップボード111にコピーしたデータ(要素)を、ロボット動作又はコマンドとして受け入れる。具体的には、ロボット動作又はコマンドの設定画面(図8の「コマンド設定画面30」参照)で、コマンドの入力領域(図8の「コマンド入力領域31」参照)に、クリップボード111のデータをペーストする。この操作により、ウェブブラウザ120での操作を、コマンドとしてシナリオデータに設定することができる。
【0048】
次に、本実施の形態である情報処理装置1の動作の一例を図9のフローチャート及び図2図8の画面の例を参照して説明する。以下では、ウェブページがHTMLページであるものとして説明する。
【0049】
図9のフローチャートに示す動作は、情報処理装置1を操作するユーザにより、入力装置2からウェブブラウザ120の起動が指示されることにより開始する。この起動の指示を受け入れると、ステップS1で、情報処理装置1は、ウェブブラウザ120を起動する。
【0050】
すると、ステップS2で、ウェブブラウザ120のウェブページ表示部122は、図2に示すような初期画面を表示する。そして、ウェブブラウザ120は、入力装置2を介して、初期画面のアドレス入力領域14に対するにユーザからのURLの入力操作を待つ。URLの入力及びマウスのクリック操作があったら、プログラムはステップS3に進む。
【0051】
ステップS3では、ウェブブラウザ120は、通信部140を介してアドレス入力領域14に入力されたURLへ移動する。次いで、ステップS4で、構造化文書取得部121が、当該URLのサーバ5から、構造化文書をダウンロードし、この構造化文書を解析し、この解析結果に基づいて、ウェブページ表示部122が、例えば、図3に示すようなウェブページを表示装置3に表示させる。その後、ウェブブラウザ120は、ステップS5に進み、ウェブページのエレメント調査モードボタン18のクリック操作を待つ。
【0052】
ステップS5で、図4に示すように、エレメント調査モードボタン18のクリックがあったら(ステップS5の判定がYES)、ステップS6に進み、ウェブブラウザ120は、モードを「エレメント調査モード」に切り替える。次のステップ7では、識別子取得部123が、ウェブページ上を移動するマウスカーソルの位置座標に基づいて、構造化文書から対応する要素を取得し、この要素を解析して、抽出し得る識別子を取得し、図5に示すように、マウスカーソルの位置に識別子表示欄20を重畳して表示する。これに対して、ステップS5の判定がNOの場合は、ステップS5に戻ってエレメント調査モードボタン18のクリック操作を待つ。
【0053】
また、「エレメント調査モード」中に、再度エレメント調査モードボタン18がクリック操作されたら(ステップS8の判定がYES)、ステップS9に進む。ステップS9では、ウェブブラウザ120は「エレメント調査モード」を解除、すなわち、モードを「通常モード」に切り替える。その後、プログラムはステップS5に戻って、エレメント調査モードボタン18のクリック操作を待つ。
【0054】
これに対して、再度のエレメント調査モードボタン18のクリック操作がされなかった場合(ステップS8の判定がNO)、プログラムはステップS10に進む。ステップS10では、ウェブブラウザ120は、ウェブページ上でのHTMLエレメント(要素)に対する右クリック操作を待つ。
【0055】
そして、何らかのHTMLエレメントに対する右クリック操作があったら(ステップS10の判定がYES)、識別子抽出メニュー21を生成するべく、プログラムはステップS11~ステップS23の処理を順次実行する。すなわち、識別子一覧表示部124は、ステップS11で識別子抽出メニュー21に「XPATH抽出」項目(図6では「XPATH」)を追加し、次いで、ステップS12で「CSS抽出」(図6では「CSS」)項目を追加する。
【0056】
そして、クリック対象の要素にHTML IDの識別子がある場合は(ステップS13の判定がYES)、識別子抽出メニュー21に「ID抽出」(図6では「ID」)項目を追加し(ステップS14)、HTML Nameの識別子がある場合は(ステップS15の判定がYES)、識別子抽出メニュー21に「Name抽出」(図6では「Name」)項目を追加する(ステップS16)。また、HTML画像の識別子がある場合は(ステップS17の判定がYES)、識別子抽出メニュー21に「画像URL抽出」(図6では「Image URL」)項目を追加する(ステップS18)。
【0057】
また、HTMLリンクの識別子がある場合は(ステップS19の判定がYES)、識別子抽出メニュー21に「リンクURL抽出」(図6では「Link URL」)項目を追加し(ステップS20)、さらに「リンクテキスト抽出」(図6では「Link Text」)項目を追加する(ステップS21)。また、HTMLテーブルの識別子がある場合は(ステップS22の判定がYES)、識別子抽出メニュー21に「テーブルCSV抽出」(図6では「Table to CSV」)項目を追加する(ステップS23)。
【0058】
次いで、プログラムはステップS24へ進み、図6に示すように、ウェブページに重畳して、生成された識別子抽出メニュー21を表示し、識別子の選択の操作入力を待つ。そして、この識別子抽出メニュー21で、左クリック等で選択の操作がされたら、ステップS25に進む。ステップS25では、データ保存部125が、選択された項目(識別子)の要素のデータを、クリップボード111にコピー(保存)する。
【0059】
このようにしてクリップボード111にコピーされたデータを、図8に示すように、RPAソフトウエア(シナリオ処理部130)のコマンド設定画面30において、コマンド入力領域31にペーストする。これにより、ウェブブラウザ120と、RPAソフトウエアとを容易に連携させることができる。
【0060】
その後、ステップS5に戻ることで、ウェブブラウザ120において、ウェブページ上で選択された別の要素に対する解析、識別子の抽出、一覧表示、クリップボード111への保存等を繰り返すことができる。
【0061】
以上のように構成された本実施の形態である情報処理装置1では、構造化文書に含まれる複数の要素が配置されたウェブページを表示するウェブブラウザ120を備える。このウェブブラウザ120の識別子取得部123が、ウェブページ上で指定された要素を解析し、抽出可能な識別子を取得する。識別子一覧表示部124が、取得した識別子の一覧をウェブページ上に重畳して表示する。そして、データ保存部125が、一覧の中からユーザにより選択された識別子に対応する要素のデータをクリップボード111に保存する。また、本実施の形態であるプログラムは、コンピュータを、上記識別子取得部123と、識別子一覧表示部124と、データ保存部125として機能させるプログラムである。
【0062】
また、本実施の形態である制御方法は、識別子取得工程で、ウェブページ上でユーザにより指定された要素を解析し、抽出可能な識別子を取得する。識別子一覧表示工程で、取得した識別子の一覧をウェブページ上に重畳して表示する。データ保存工程で、一覧の中からユーザにより選択された識別子に対応する要素のデータをクリップボード111に保存する。
【0063】
このような構成により、ウェブページの各要素を構成する、あらゆるデータ形式や識別子を簡易的に確認及び抽出し、外部プログラムとの容易な連携を実現することが可能となる。
【0064】
また、本実施の形態である情報処理装置1では、ユーザからの識別子の取得指示(例えば、「エレメント調査モード」に切り替える指示)があったときに、識別子取得部123、識別子一覧表示部124及びデータ保存部125による処理が実行される。よって、取得指示がない場合(「通常モード」)は、識別子取得部123、識別子一覧表示部124及びデータ保存部125による処理が実行されることがなく、ウェブブラウザ120を、ウェブページの表示や操作が可能な通常のウェブブラウザとして機能させることもできる。
【0065】
また、本実施の形態では、ユーザからの指示が入力される入力装置2としてのポインティングデバイスを備えている。識別子取得部123は、ウェブページ上でのポインティングデバイスの位置座標を取得し、取得した位置座標に対応する要素のデータをウェブページに重畳して表示している。これにより、ユーザは、クリック操作等しなくても要素の内容を簡易に確認することができる。
【0066】
また、本実施の形態では、要素のデータ形式が表である場合、データ保存部125は、表のデータをすべて取得しCSV形式に変換して、クリップボード111に保存している。このため、ユーザがドロップ&ドラッグ操作等によって領域を選択して表のデータを取得する必要がなく、また、コピーした内容をペーストすることで、表の内容を簡易に確認することができる。
【0067】
以上、図面を参照して、本発明の実施の形態を詳述してきたが、具体的な構成は、この実施の形態及び実施例に限らず、本発明の要旨を逸脱しない程度の設計的変更は、本発明に含まれる。
【0068】
一例として、ウェブページ表示部122、又は識別子一覧表示部124等による表示装置3の表示画面への表示態様は図示例に限定されず、種々の変形が可能である。
【0069】
また、上述の実施の形態において、クリップボード111を介して、ウェブブラウザ120とRPAソフトウエアであるシナリオ処理部130とを連携させていたが、これに限定されることはない。例えば、ワードプロセッシングソフトウエア、表計算ソフトウエア等、他のアプリケーションソフトウエアと連携させることができる。
【0070】
また、上記実施の形態では、情報処理装置1を動作させるプログラムは記憶部110に格納されて提供されていたが、不図示の光学ディスクドライブ、USBインタフェース等を用いて、プログラムが格納された光ディスク、USBフラッシュメモリ装置、メモリーカード等を接続し、このDVD等からプログラムを情報処理装置1に読み込んで動作させてもよい。また、サーバ5内にプログラムを格納しておき、通信ネットワーク4及び通信部140を介してこのプログラムを情報処理装置1に読み込んで動作させてもよい。さらに、上述の各実施形態において、情報処理装置1は複数のハードウェア要素により構成されていたが、これらハードウェア要素の一部の動作をCPU等がプログラムの動作により実現することも可能である。
【符号の説明】
【0071】
1:情報処理装置 2:入力装置 3:表示装置
120:ウェブブラウザ 123:識別子取得部
124:識別子一覧表示部 125:データ保存部
130:シナリオ処理部
図1
図2
図3
図4
図5
図6
図7
図8
図9