JP6603866B2 - 自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体 - Google Patents

自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体 Download PDF

Info

Publication number
JP6603866B2
JP6603866B2 JP2016561778A JP2016561778A JP6603866B2 JP 6603866 B2 JP6603866 B2 JP 6603866B2 JP 2016561778 A JP2016561778 A JP 2016561778A JP 2016561778 A JP2016561778 A JP 2016561778A JP 6603866 B2 JP6603866 B2 JP 6603866B2
Authority
JP
Japan
Prior art keywords
data
script
party web
web portal
specific
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016561778A
Other languages
English (en)
Other versions
JP2018513426A (ja
Inventor
アブラハム, ガブリエル ディアズ ガーザ
ロペス, リカルド スアレス
Original Assignee
ベスト コレクト, エス.エー. ディーイー シー.ブイ.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ベスト コレクト, エス.エー. ディーイー シー.ブイ. filed Critical ベスト コレクト, エス.エー. ディーイー シー.ブイ.
Publication of JP2018513426A publication Critical patent/JP2018513426A/ja
Application granted granted Critical
Publication of JP6603866B2 publication Critical patent/JP6603866B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Facsimiles In General (AREA)

Description

発明の背景
[技術分野]
本発明は、一般には、ウェブポータルからのデータスクレイピング及びデータの検証に関する。
背景及び関連技術
生産を効率化し、不正に対抗する取り組みにおいて、多くの国は、電子請求処理を指令する方向に向かっている。多くの事例において、政府から指令される請求処理は、企業、及び時として個人が、政府機関を通じて請求書を登録することを必要とする。登録された請求書はデジタル署名されるか、又は、他の様態で認証され得る。
加えて、電子請求処理の使用を指令する事例によっては、電子登録された請求書のみが法的に有効になる。そのため、企業は、請求書が適切に登録されていることを保証することを強く動機づけされる。同様に、企業は、有効でない請求書にまつわる問題を回避するために、登録された請求書が正確で完全であることを保証するように強く動機づけされている。
支払い及び請求書を処理するとき、企業は、様々な請求書にアクセスし、該請求書を検証するために、複雑で、誤りが発生しやすい作業を実施することを要求されることが多い。たとえば、請求書にアクセスするために、購入者は、提供者のウェブポータルにアクセスする必要がある場合がある。各提供者の各ウェブポータルは、固有で複雑である場合がある。加えて、各ウェブポータルは、異なる固有のフォーマットで請求書情報を与える場合がある。そのため、購入者は、各固有のウェブサイトをナビゲートし、必要な請求書及び文書がダウンロードされていることを個々に検証するための適切な方法を特定しなければならない。購入者はその後、ダウンロードされた請求書及び文書を、自身の記録に照らして検証しなければならない。
加えて、少なくともいくつかの実施態様においては、請求書をウェブポータルにアップロードし、請求書エントリを検証する必要がある。たとえば、請求書の提供者は、請求書をアップロードし、関連する購入注文に照らして検証する必要があり得る。請求書の提供者が、請求書が処理され得る前に、請求書と購入注文との間に何らかの食い違いがあれば、これに対処することがさらに必要である場合がある。
さらに、少なくとも1つの実施態様において、ユーザは、請求書をアップロードすることができる時間枠を制限されている場合がある。たとえば、請求書の提供者は、その日の請求書すべてを入力するのに24時間の枠しか有しない場合がある。情報を入力するのに失敗すると、継続中の未処理分が次の日に繰り越され、又は、結果として適時に集金することができなくなる可能性がある。
したがって、従来技術において、対処され得るいくつかの欠点がある。
発明の簡潔な概要
本発明の実施態様は、ウェブポータルからデータをインテリジェントにスクレイピングし、その後、データを検証するように構成されているシステム、方法、及び装置を含む。特に、本発明の実施態様は、データを収集するためにウェブページ特有のスクリプトを実行するための1つ又は複数の方法及びシステムを含む。ウェブページ特有のスクリプトは、多様なソースから大量のデータを収集するための効率の高い手段をもたらすことができる。さらなる実施態様は、ウェブフォームを埋め、情報をアップロードし、情報を検証するための動的なシステムを提供することができる。加えて、本発明の実施態様は、大量のデータを検証するときに、人為的な誤りを大幅に低減し、大幅な時間節約を可能にすることができる。
本発明の実施態様は、不統一なフォーマットのデータをインテリジェントにロードし、第2のデータセットに照らして検証するサーバコンピュータシステムを含むことができる。特に、サーバは、不統一に記憶されているデータセットにアクセスし、該データセットを比較するためのコンピュータ化された方法を実行するように構成することができる。方法は、1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップを含むことができる。1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶することができる。方法はまた、特定の第三者ウェブポータルにアクセスするステップを含むことができる。特定の第三者ウェブポータルは、1つ又は複数のデータ構造と関連付けられている情報を含むことができる。
加えて、方法は、特定の第三者ウェブポータルに固有のものである特定のスクリプトを実行するステップを含むことができる。特定のスクリプトは、ユーザ入力デバイスからの入力を模倣することによって、特定の第三者ウェブポータルとやり取りするように構成することができる。加えて、スクリプトは、1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパース(parse)するように、特定の第三者ウェブポータルとのやり取りを自動的に適応させることができる。
さらに、方法は、1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、第2のデータセットと比較するステップを含むことができる。第2のデータセットは、第2のローカルにアクセス可能なデータベースに記憶することができる。方法はまた、比較されたデータに基づいて報告を生成するステップをも含むことができる。報告は、第1のデータセットと第2のデータセットとの間の食い違いの通知を含むことができる。
本発明のさらなる実施態様は、様々な固有の不統一な第三者ウェブポータルからの、不統一に提示されるデータをパースするためのサーバコンピュータシステムを含むことができる。コンピュータサーバシステムは、1つ又は複数の第三者ウェブポータルへのアドレスを含むローカルデータベースデバイスを備えることができる。サーバコンピュータシステムはまた、1つ又は複数の第三者ウェブポータルに自動的にアクセスするように構成されているネットワーク通信デバイスをも備えることができる。
加えて、サーバコンピュータシステムは、ネットワーク通信デバイスによってアクセスされる1つ又は複数の第三者ウェブポータルの各々について、ウェブポータル特有のスクリプトを自動的に実行するように構成されているスクリプト処理プロセッサを備えることができる。ウェブポータル特有のスクリプトの各々は、ユーザ入力デバイスからの入力を模倣することによって、1つ又は複数の第三者ウェブポータルの各々とやり取りするように構成することができる。加えて、ウェブポータル特有のスクリプトは、1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、1つ又は複数の第三者ウェブポータルの各々とのやり取りを自動的に適応させるように構成することができる。
さらに、サーバコンピュータシステムは、1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、ローカルデータベースデバイスに記憶されている第2のデータセットと比較するように構成されているデータベースプロセッサを備えることができる。またさらに、コンピュータサーバシステムは、比較されたデータに基づいて報告を表示するように構成されているユーザ出力デバイスを備えることができる。報告は、第1のデータセットと第2のデータセットとの間の食い違いの通知を含む。
本発明の例示的な実施態様のさらなる特徴及び利点は、以下の説明に記載されるか、又は、一部にはその説明から明らかになるか、又は、そのような例示的な実施態様を実践することによって学習することができる。そのような実施態様の特徴及び利点は、添付の特許請求の範囲において特に指摘される機器及び組み合わせを用いて実現及び達成することができる。これらの及び他の特徴は、以下の説明及び添付の特許請求の範囲からより完全に明らかになるか、又は、以下に記載するような例示的な実施態様を実践することによって学習することができる。
上記で列挙した及び本発明の他の利点及び特徴を得ることができる方法を説明するために、上記で簡潔に説明した本発明の、より特定的な説明を、添付の図面に示すその特定の実施形態を参照することによって与える。これらの図面は本発明の一般的な実施形態を示しているに過ぎず、それゆえ、本発明の範囲の限定であると考えられるべきではないことを理解した上で、本発明を、添付の図面を使用することによって、さらに特定的且つ詳細に記載及び説明する。
本発明の実施態様によるシステムの概略図である。
本発明の実施態様によるウェブページの図である。
本発明の実施態様によるウェブページの別の図である。
本発明の実施態様によるウェブページのなお別の図である。
本発明の実施態様によるデータベースプロセッサの概略図である。
本発明の実施態様による方法の流れ図である。
詳細な実施形態の詳細な説明
本発明は、ウェブポータルからデータをインテリジェントにスクレイピングし、その後、データを検証するように構成されているシステム、方法、及び装置に及ぶ。特に、本発明の実施態様は、データを収集するためにウェブページ特有のスクリプトを実行するための1つ又は複数の方法及びシステムを含む。ウェブページ特有のスクリプトは、多様なソースから大量のデータを収集する効率の高い手段をもたらすことができる。さらなる実施態様は、ウェブフォームを埋め、情報をアップロードし、情報を検証するための動的なシステムを提供することができる。加えて、本発明の実施態様は、大量のデータを検証するときに、人為的な誤りを大幅に低減することができる。
したがって、本発明の実施態様は、人為的な誤りを最小限に抑えながら、コンピュータ性能を最適化するためのシステム及び方法を提供する。特に、本発明の実施態様は、様々な異なるプラットフォームにわたって、不統一に記憶されているデータにアクセスすることができる。収集されたデータはその後、第2のデータソースに照らして検証することができる。
ますます多くの社会活動、経済活動、事業活動、技術活動、及び他の活動がデジタル環境に移行しているため、利用可能な様々なプラットフォームにわたってデータを正確に相関付けることが可能であることが、より重要になってきている。たとえば、組織は、様々な異なる企業と取引している場合がある。各企業は、当該企業の外部組織との関係を管理するために、当該企業自体の固有のウェブポータルを提供している場合がある。少なくとも1つの実施態様において、各それぞれの固有のウェブポータルにアクセスし、各固有のウェブポータルから不統一に記憶されているデータを収集することが必要である場合がある。
いくつかの異なる固有のウェブポータルから、不統一に記憶されているデータを適切に識別及び収集するという、重大な技術的課題があることが理解されよう。同様に、手作業で実施しているこれらのデータ識別及び収集作業においては、多大な費用及び人為的な誤りの可能性があることが理解されよう。加えて、少なくとも1つの実施態様において、不統一に記憶されているデータにアクセスするために自動化並びに技術的に実装されるシステム及び方法を使用することによって、利点をもたらし、人間のユーザが再現することが不可能である機能を実施することができることが理解されよう。
たとえば、図1は、ネットワーク120を通じて様々なウェブサーバ110と通信しているサーバコンピュータシステム100を示す。ウェブサーバ110は、各々がそれぞれの第三者ウェブポータルに対応する、1つ又は複数の個々の異なるウェブサーバ110a、110bを含み得る。たとえば、ウェブサーバ110aは、特定のサービス提供者と関連付けられ得、ウェブサーバ110bは特定の製造業者と関連付けられ得る。いずれにせよ、ユーザは、両方のサーバ110a、110bからデータを収集する必要がある場合があるが、データは、2つのそれぞれのウェブポータルの間で別様にアクセスされ、別様に記憶される場合もある。
したがって、本発明の実施態様は、ネットワーク接続120を通じて1つ又は複数の個別のウェブサーバ110と通信することができるサーバコンピュータシステム100を含む。加えて、サーバコンピュータシステム100は、本明細書に記載されるような、固有のウェブポータルにわたってデータにアクセスし、ローカルにアクセス可能なデータセットに照らしてデータを検証するように構成されている様々なモジュール及び構成要素を備えることができる。しかしながら、本明細書に記載されているモジュール及び構成要素は、説明を明瞭にするためのものに過ぎないことが理解されよう。様々な他の実施態様において、モジュール及び構成要素は、他の様態で編成、組み合わせ、分割、及び命名されてもよい。
サーバコンピュータシステム100は、ネットワーク120と通信しているネットワーク通信デバイス102を備えることができる。様々な実施態様において、ネットワーク通信デバイス102は、ファイバアダプタ、Ethernet(登録商標)アダプタ、ワイヤレスアダプタ、モデム、ルータ、又は任意の他の同様のネットワークデバイスを含むことができる。ネットワーク通信デバイス102は、スクリプト処理プロセッサコアネットワーク104と通信することができる。
少なくとも1つの実施態様において、スクリプト処理プロセッサ104は、サーバコンピュータシステム100内でユーザによって決定されるのに従って、様々なスクリプト及び他のソフトウェアを実行するように構成することができる。様々な実施態様において、スクリプト処理プロセッサ104は、汎用処理装置、専用処理装置、マイクロコントローラ、FPGA、離散集積回路、仮想プロセッサ、又は何らかの他の処理デバイス若しくは構成要素を含むことができる。スクリプト処理プロセッサ104はまた、コンパイラ、符号化器、パッケージャ、アセンブラ、又は何らかの他の同様のソフトウェア構成要素のような、様々なソフトウェア構成要素を含んでもよい。
加えて、少なくとも1つの実施態様において、スクリプト処理プロセッサ104はまた、データベースプロセッサ106及びスクリプト作成モジュール108と通信する。少なくとも1つの実施態様において、データベースプロセッサ106は、スクリプト処理プロセッサ104と同じプロセッサ、個別の処理装置、スクリプト処理プロセッサ104を含むコンピュータとは別個のものであるコンピュータ上の処理装置、又は、何らかの他の処理装置を含むことができる。同様に、スクリプト作成モジュール108も、スクリプト処理プロセッサ104と同じプロセッサを含むことができ、又は、個別の処理装置若しくはコンピュータ構成要素を含むことができる。
様々な実施態様において、サーバコンピュータシステム100はまた、ローカルデータベースデバイス130及び他のコンピュータ140とも通信することができる。ローカルデータベースデバイス130は、ハードドライブ、RAM、又は他の記憶デバイスのような記憶デバイス上に記憶されているデータ構造を含むことができる。ユーザコンピュータ140は、サーバコンピュータシステム100が実行している同じコンピュータ、外部のコンピューティングデバイス、モバイルコンピューティングデバイス、タブレットコンピュータコンピューティングデバイス、ワークステーション、サーバ、又は任意の他のコンピューティングデバイスを含んでもよい。
少なくとも1つの実施態様において、サーバコンピュータシステム100の様々なモジュールは、様々なウェブサーバ110から不統一に記憶されているデータにアクセスして該データをダウンロードし、ローカルデータベースデバイス130に記憶されている対応するデータに照らして情報を検証することができる。特に、サーバコンピュータシステム100は、様々な異なるウェブポータルにわたって、不統一に記憶されているデータにアクセスするように自動的に適応することができる。たとえば、ウェブサーバ110が多数存在する可能性があり、それに対応して固有のウェブページ及びウェブポータル構成が多数存在することに起因して、少なくとも1つの実施態様において、サーバコンピュータシステム100は、各所望のウェブポータルに対する固有のスクリプトを備えることができる。特に、スクリプト処理プロセッサ104は、ネットワーク通信デバイス102が接触を試みているウェブポータルに対応する適切なスクリプトを自動的にロードすることができる。各固有のスクリプトは、ネットワーク通信デバイス102がそれぞれのウェブサーバ110に対して通信するための命令を含むことができる。たとえば、1つ又は複数のウェブサーバ110は、対象のデータにアクセスするためにユーザ名及びパスワードを必要とする場合がある。同様に、各ウェブポータルは、所望の情報にアクセスするために特定のナビゲーション命令を必要とする固有の構造を備える場合がある。
したがって、少なくとも1つの実施態様において、所望の情報を収集するようにサーバコンピュータシステム100に指示するスクリプトを、各個々のウェブページ及びウェブポータルについて作成することができる。少なくとも1つの実施態様において、スクリプト作成モジュール108は、ユーザに、スクリプトを作成するための適切なツールを与える。たとえば、スクリプト作成モジュール108は、記録機能を与えることができる。記録機能を使用して、ユーザコンピュータ140のユーザは、所望のウェブポータルにアクセスし、ウェブポータルをナビゲートし、ウェブポータル内で特定の対象項目を識別することができる。特定の対象項目は、不統一に記憶されているデータ、ボタン、データにアクセスするのに必要な動作、及び、データにアクセスするのに必要なフィールドを含み得る。
ユーザがスクリプトの作成を完了すると、スクリプト作成モジュール108は、スクリプト処理プロセッサ104にスクリプトを与えることができる。スクリプト処理プロセッサ104はその後、スクリプトをローカルデータベースデバイス130に記憶することができる。その後、そのスクリプトが関連付けられているウェブポータルがアクセスされると、スクリプト処理プロセッサ104は、以前に記録されたユーザのやり取りに基づいて、自動的にスクリプトにアクセスし、スクリプトを実行し、ウェブページをナビゲートすることができる。
加えて、少なくとも1つの実施態様において、複数の異なるスクリプトが1つの特定のウェブポータルと関連付けられる場合がある。スクリプト処理プロセッサ104は、アクセスされている特定のウェブポータルだけでなく、ウェブポータル内で探索されているデータにも基づいて、ウェブポータルによって実行するための特定のスクリプトを選択することができる。たとえば、第1のクライアントは、ウェブポータルにある対象データにアクセスするために特別なスクリプトを必要とする場合があり、一方で第2のクライアントが、そのウェブポータルに異なる又は追加の情報を所望する場合がある。そのため、第1のクライアント及び第2のクライアントは、同じウェブポータルに対して異なるスクリプトを有し得る。ウェブポータルにアクセスするとき、スクリプト処理プロセッサ104は最初に、いずれのクライアントのデータがアクセスされているかを判定し、その後、その判定に基づいて適切なスクリプトを実行することができる。
必要なデータ122がウェブサーバ110から受信されると、データベースプロセッサ106は、そのデータを、ローカルデータベースデバイス130から受信される第2のデータセット132と比較することができる。たとえば、これら2つのデータセットは、出荷されている在庫に対する、請求されている在庫に関係する情報を含むことができる。そのため、データベースプロセッサ106は、2つのデータセット間の食い違いを迅速且つ容易に識別することができる。
ここでウェブポータルの例に移ると、図2は、特定のウェブポータルのウェブページ200を示している。ウェブポータルは、ウェブサーバ110aによってホストされ得る。図示されているように、ウェブページ200は、一連のボタン210、212、214と、ユーザ名フィールド220と、パスワードフィールド230と、CAPTCHAボックス240と、CAPTCHAユーザフィールド242と、送信ボタン250とを備える。少なくとも1つの実施態様において、最初にウェブページ200に到達したとき、ユーザは、ウェブページがどのようにナビゲートされるべきかを指示するためにスクリプトを生成しなければならない。たとえば、ユーザは、スクリプト作成モジュール108内の記録機能を起動し、ウェブページでのリアルタイムの移動を記録することができる。少なくとも1つの実施態様において、ユーザは、自身のユーザ名及びパスワードを入力する前にボタン210を作動させるように要求される場合がある。そのため、記録モードにおいて、スクリプト作成モジュール108は、画面上のボタン210へのマウスの移動を記録し、その後、ボタン210上でのマウスクリックを記録することができる。
加えて、スクリプト作成モジュール108は、ユーザによるユーザ名フィールド220へのマウスの移動、及び、フィールド内でのユーザ名の入力を識別することができる。同様に、スクリプト作成モジュール108は、ユーザによるパスワードフィールド230へのマウス移動、及び、ユーザパスワードの入力を記録することができる。少なくとも1つの実施態様において、記録モードにおいて、ユーザは、ユーザ名及びパスワードを特殊オブジェクトとして指定することができる。特殊オブジェクトとして指定されると、スクリプト作成モジュール108は、スクリプトが、ユーザが入力した正確なユーザ名及びパスワードをただ繰り返すべきではなく、代わりに、事例に特有のユーザ名及びパスワードを探し出すべきであると判定することができる。たとえば、サーバコンピュータシステム100は、同じウェブページ200にアクセスする複数のユーザを有する場合がある。各ユーザが、固有のユーザ名及びパスワードを有し得る。そのため、少なくとも1つの実施態様において、スクリプトは、誰がデータを要求しているかに応じて、正確なユーザ名及びパスワードを自動的に入力するように構成することができる。
同様に、少なくとも1つの実施態様において、記録モードにおいて、ユーザは、CAPTCHAフレーズ(CAPTCHA phrase)240を特殊オブジェクトとして指定することができる。ある項目を特殊オブジェクトとして指定するとき、ユーザは、その項目がどのタイプの特殊オブジェクトであるかを指定することができる。たとえば、ユーザ名、パスワード、CAPTCHAフレーズ、ボタン、又は他の同様のウェブページベースの特徴である。対照的に、少なくとも1つの応用形態において、スクリプト記述作成モジュール108は、特殊オブジェクトとオブジェクトのタイプの両方を自動的に識別する。
たとえば、少なくとも1つの実施態様において、光学文字認識モジュール(図示せず)が、画像内に何らかのテキストがないかウェブページを走査することができる。光学文字認識モジュールはその後、テキストを識別し、テキストをスクリプト作成モジュール108に送信することができる。スクリプト作成モジュール108は、受信したテキスト及び他の利用可能なウェブページテキストを分析して、ウェブページ内の様々な特殊要素を自動的に識別することができる。スクリプト作成モジュール108はその後、識別された特殊要素を、ローカルデータベースデバイス130内の特定のデータフィールドにマッピングすることができる。
たとえば、光学文字認識モジュールは、単語「パスワード(password)」を含む画像ヘッダを識別し得る。画像ヘッダは、テキストフィールドに直に隣接し得る。この文字認識情報に基づいて、スクリプト作成モジュール108は、隣接するテキストフィールドをパスワードの特殊要素と関連付けるスクリプトを作成することができる。そのため、将来スクリプトが実行されるとき、スクリプト処理プロセッサ104は、テキストフィールドに適切なパスワードを自動的に記入することができる。
加えて、少なくとも1つの実施態様において、スクリプト作成モジュール108は、特定のフィールドがセキュリティパラメータを含むことを識別することができる。たとえば、特定のフィールドを、テキストを受け取るが、実際の受け取った文字の代わりに対応する丸文字を表示するように構成することができる。このセキュリティパラメータ情報を使用して、スクリプト作成モジュールは、パスワードフィールドを識別することがより確実に可能であり得る。特に、いくつかの事例において、パスワードフィールドとユーザ名フィールドは、互いの近くにある。1つのフィールドがセキュリティパラメータを含み(多くの場合パスワードフィールドがそうであるように)、一方で他のフィールドがセキュリティパラメータを含まない(多くの場合ユーザ名フィールドがそうであるように)ことを識別することができることによって、スクリプト作成モジュール108が、パスワードフィールドとユーザ名フィールドとの間で区別することが可能になり得る。
加えて、ユーザは、CAPTCHAユーザフィールド242を、CAPTCHAフレーズ240と関連付けることができる。したがって、スクリプト処理プロセッサ104は、特殊オブジェクトキャプチャ240に対して光学文字認識モジュールを作動させ、フレーズを識別し、キャプチャユーザフィールド242にフレーズを入力することができる。少なくとも1つの実施態様において、光学文字認識モジュールがCAPTCHAフレーズを十分に高い確度で識別することができない場合、スクリプト処理プロセッサ104は、別のCAPTCHAフレーズを自動的に要求するか、又は、ユーザ介入を要求することができる。対照的に、少なくとも1つの実施態様において、スクリプト処理プロセッサ104は、CAPTCHAの基礎となるコードを分析し、適切な応答方法を識別することができる。
本明細書に示されるものとは異なる、ウェブページが含む可能性がある様々な異なるフォーマット及び構成があることは理解されよう。しかしながら、少なくとも1つの実施態様において、スクリプト作成モジュール108に起因して、サーバコンピュータシステム100は、自動的に、人為的な誤りなく、ほぼすべてのウェブページ200にアクセスすることができる。そのため、一貫して、迅速に、且つ誤りが発生しにくい方法で、様々な異なるウェブポータルからデータを収集することができる。
図3は、不統一に記憶されているデータセット350を備えるウェブページ300を示す。データセット350は、データ入力列310と、第1のデータフィールド列312と、第2のデータフィールド列314と、第3のデータフィールド列316とを備える。加えて、ウェブページ300は、上スクロール332にあるスクロールバー330、下スクロール336、及びスクロール位置インジケータ334を備える。図3に示す様々なデータエントリ310、データフィールド312、314、316、及びデータ要素320は、明瞭性及び説明のためにのみ与えられている。不統一に記憶されているデータは、様々な異なる形態で異なる時に与えられる可能性があり、依然として本発明の範囲に入ることが理解されよう。
少なくとも1つの実施態様において、図3の不統一に記憶されているデータ350がアクセスされると、データセット350全体が、たとえウェブページ内にすべて同時に示されていなくとも、ローカルメモリ内で利用可能であり得る。たとえば、たとえデータの一部を見えるようにするためにスクロールする必要があるとしても、データセット全体がブラウザのローカルメモリ内で利用可能であり得る。そのような事例において、スクリプト処理プロセッサ104は、不統一に記憶されているデータ350とのさらなるやり取りの必要なしに、ネットワーク通信デバイス102から直に対象のデータを収集することができる。
対照的に、少なくとも1つの実施態様において、図3の不統一に記憶されているデータ350がアクセスされると、記録モードにあるユーザは、不統一に記憶されているデータ350が標的情報を含むことを示すことができる。標的情報が識別されると、スクリプト作成モジュール108は、標的情報のすべてが現在ネットワーク通信デバイス102のローカルメモリとともにあるか否か、又は、情報セット全体にアクセスするためにウェブページとさらにやり取りする必要があるかを判定することができる。たとえば、少なくとも1つの実施態様においては、ウェブページ300に表示されているデータのみがメモリ内で利用可能である場合がある。そのため、記録モードを使用しながら、ユーザは、スクロールバー330の所在を示すことができる。対照的に、少なくとも1つの実施態様において、スクリプト作成モジュール108は、スクロールバー330の所在を自動的に識別することができる。代替的な実施態様において、スクリプト作成モジュール108は自動的に、ウェブページを分析し、ソースコードに基づいて、利用可能なデータのすべてがメモリ内にあるか否かを判定し、ない場合、情報を取り出すのに必要なステップを判定することができる。
すべてのデータにアクセスするためにウェブページ300とやり取りする必要があることをスクリプト作成モジュール108が識別すると、スクリプト作成モジュール108は、ウェブページ特有のスクリプトを作成することができる。ウェブページ特有のスクリプトは、現在ウェブページ300に表示されているデータをパースし、その後、表示データを進めるためにウェブページ300とやり取りするように構成することができる。たとえば、スクリプトは、あたかもマウス又はキーボードによって生成されるかのようにユーザ入力信号を生成し、下スクロールボタン336が押されるようにすることができる。データ構造350がスクロールすると、スクリプトは、すべてのデータエントリがパースされるまで、引き続きウェブページの新たに見えるようになったデータエントリをパースすることができる。
少なくとも1つの実施態様において、スクリプトは、様々な異なる論理機能を使用して構成することができる。たとえば、スクリプトは、スクリプトプロセッサ104に、スクロールバー330上でのスクロールインジケータ334の相対的な所在を識別するよう指示するように構成することができる。この相対位置を使用して、スクリプトは、スクリプトプロセッサ104に、さらなるデータエントリ320にアクセスするために上スクロール又は下スクロールする必要があるかを判定するよう指示するように構成することができる。対照的に、スクリプトは、スクリプトプロセッサ104に、自動的に上スクロールボタン332を作動させ、その後、新たなデータエントリが利用可能であるか否かを判定するよう指示するように構成することもできる。新たなデータエントリが利用可能でない場合、スクリプトは、スクリプトプロセッサ104に、下スクロールボタン336を作動させ、その後、新たに利用可能になったデータエントリがあればそのデータエントリをパースするよう指示するようにさらに構成することができる。スクリプトは、スクリプトプロセッサ104に、新たなデータエントリが現れなくなるまで、引き続き下スクロールボタン336を作動させ、新たに利用可能になったデータエントリ320をパースするよう指示するように構成することができる。
したがって、少なくとも1つの実施態様において、たとえデータ350の長さ及び可視性が不確定である場合であっても、ウェブページ300から標的データをパースするために、単一のウェブページ特有のスクリプトを生成することができる。たとえば、少なくとも1つの実施態様において、たとえ図3のウェブページ300が依然としてスクロール可能なデータを表示することが可能であったとしても、スクロール機能が必要とされるのに十分な量のデータない場合がある。対照的に、少なくとも1つの実施態様において、すべてのデータにアクセスするために、大きくスクロールすることが必要である場合がある。両方の事例において、ウェブページ特有のスクリプトを実行するスクリプト処理プロセッサ104は、すべての標的データを収集するのに必要な動作を適切に識別することができる。
加えて、本発明の少なくとも1つの実施態様において、データをウェブポータルにアップロードするためにサーバコンピュータシステム100を使用することができる。たとえば、上述したように、記録モードにあるユーザが、上述したようにウェブページとやり取りすることができる。しかしながら、この事例においては、ユーザは、データをウェブページにアップロードするための方法を明示することができる。当業者には、対象のウェブポータルにデータを自動的にアップロードするように構成されている自動スクリプトを生成するために、上記の開示がどのように適用され得るかは理解されよう。
少なくとも1つの実施態様において、スクリプトが作成されると、ローカルデータベースデバイス130に記憶されているデータを自動的にアップロードするためにスクリプトを作動させることができる。たとえば、特定のユーザは、ローカルデータベースデバイスに記憶されている1つ又は複数の請求書を有する場合がある。少なくとも1つの実施態様において、各請求書は、異なる標的ウェブサイトと関連付けられている。各請求書が関連付けられている特定のウェブサイトを自動的に識別する特定のスクリプトを生成することができる。たとえば、スクリプトは、各請求書をそれぞれのウェブページと関連付けるデータファイルにアクセスするように構成することができる。対照的に、少なくとも1つの実施態様において、スクリプト作成モジュール108は、関連付けられている情報に基づいて、ウェブページを自動的に識別するように構成することができる。
1つ又は複数の適切なウェブページが識別されると、スクリプト処理プロセッサ104は、各ウェブページと関連付けられている適切なスクリプトを実行することができる。スクリプト処理プロセッサ104はその後、それぞれのスクリプトによって指示されるように、データをアップロードすることができる。特に、スクリプトは、スクリプト処理プロセッサに、ユーザがデータを入力しているように見えるように、マウスを移動させ、キー押下を実行し、他の一般的なユーザインターフェース機能を実施するよう指示することができる。
図4は、不統一に記憶されているデータセット450を備えるウェブページ400の別の実施態様を示す。特に、不統一に記憶されているデータ450は、図3と同じデータエントリ310及びデータフィールド312、314、316を備える。分かりやすいように類似のデータが与えられているが、実際の使用においてはこの限りでなくてもよい。
図4の不統一に記憶されているデータ450は、図3の不統一に記憶されているデータ350に記憶されている同じデータとは異なる構造を備える。加えて、図4のウェブページ400はスクロールバーを備えず、代わりに、ページボタン410、412、420、422を備える。図3のスクリプト作成と同様に、少なくとも1つの実施態様において、記録機能を使用して、ユーザは、ページボタン410、412、420、422が特殊オブジェクトを含むことを示すことができる。
加えて、少なくとも1つの実施態様において、スクリプト作成モジュール108は、データ構造450を進めるために特殊オブジェクト410、412、420、422が使用されることを自動的に判定することができる。対照的に、少なくとも1つの実施態様において、ユーザは、記録された情報を使用して、ページボタン410、412、420、422が不統一に記憶されているデータにページを進ませることをスクリプト作成モジュール108に明示することができる。
少なくとも1つの実施態様において、ページボタン410、412、420、422が特殊オブジェクトとして指定されると、ユーザは、スクリプト作成モジュール108に、各オブジェクトの機能をさらに指定しなければならない。たとえば、スクリプト作成モジュール108は、ユーザが各特殊オブジェクトと関連付けることができる所定の機能のメニューを与えることができる。たとえば、「ページ前進ボタン」のメニュー選択肢が利用可能であり得る。ユーザは、ページボタン420を特殊オブジェクトとして指定し、その後、メニュー内でページボタン420を「ページ前進ボタン」として指定することができる。
そのため、少なくとも1つの実施態様において、スクリプト処理プロセッサ104は、ウェブページ特有のスクリプトを実行して、すべての標的データにアクセスするために図4のウェブページ400とやり取りする必要があるか否かを自動的に判定することができる。特に、不統一に記憶されているデータセット450内に存在するデータが何であるかにかかわらず、スクリプト処理プロセッサ104は、図4のウェブページ400上で同じウェブページ特有のスクリプトを実行することができる。たとえば、第1の事例において、不統一に記憶されているデータセット450は、大量のデータ第1のクライアントを含む場合があり、一方、第2の事例において、不統一に記憶されているデータセット450は、第2のクライアントについて1ページよりも少ないデータを含む場合がある。
したがって、本発明の実施態様は、ウェブページ特有のスクリプト、及び、当該スクリプトを作成するための方法を提供する。ウェブページ特有のスクリプトは、特定のウェブページ300、400を対象とする任意の数の異なるデータ要求に対して使用することができる。そのため、高い効率レベルを達成することができ、人為的な誤りの大幅な低減を達成することができる。
図5は、ウェブサーバ110から受信される不統一に記憶されているデータ350、450を、ローカルデータベースデバイス130に記憶されているデータによって検証するデータベースプロセッサ106の概略図を示す。この例において、ウェブサーバから受信される不統一に記憶されているデータ350、450は、図3及び図4に示すデータと一致する。しかしながら、ローカルデータベースデバイス130から受信されるデータ132は、不統一に記憶されているデータ350、450と完全には一致しない。そのため、データベースプロセッサ106は、食い違いの指示を含む報告500を生成することができる。
少なくとも1つの実施態様において、報告はユーザに、検証されなかった特定のエントリを示す通知インジケータ540を備えることができる。たとえば、1と2の両方のエントリが、ウェブサーバ110から受信されている不統一に記憶されているデータ350、450には存在しなかった。加えて、データエントリ4と関連付けられるデータ要素は、データセット132、350、450の間で一致していない。特に、不統一に記憶されているデータ350、450は、エントリ4が赤(red)及びオメガ(omega)と関連付けられるべきであることを示す。対照的に、ローカルに記憶されているデータセット132に対するデータエントリは、エントリ4が緑(green)及びシータ(theta)と関連付けられるべきであることを示す。さらに、データエントリ5は、ガンマ(gamma)とオメガとの間の不一致を含む。様々な実施態様において、この情報は、ユーザコンピュータ140上で、プリントアウトで、又は何らかの他の形態でユーザに表示することができる。
そのため、本発明の実施態様は、ウェブページ内で不統一に記憶されているデータに効率的にアクセスし、データを収集及び検証するときに人為的な誤りを低減するための方法及びシステムを提供する。上記開示に基づいて、本発明は適合性が高く、同時に拡張性が高いことが理解されよう。たとえば、少なくとも1つの実施態様において、図1のサーバコンピュータシステム100は、大量の異なるデータ要求の一括処理に利用することができる。
たとえば、少なくとも1つの実施態様において、クライアントは、いくつかの異なる第三者との一連の請求書を検証することに関心がある場合がある。サーバコンピュータシステム100のユーザは単に、対象の請求書を様々な第三者ウェブポータルと関連付けるデータとともに、対象の請求書のリストを含むデータファイルをロードすることができる。標的情報がロードされると、ユーザは単に、サーバコンピュータシステム100を実行することができる。
サーバコンピュータシステム100は自動的に、請求書及び第三者の情報を、特定のサーバ110及び付随するウェブページと関連付けることができる。たとえば、ネットワーク通信デバイス102は、上記で受信された第三者のうちの一者と関連付けられた特定の第三者ウェブページにアクセスすることができる。ネットワーク通信デバイス102はその後、第三者ウェブポータル内でナビゲートすることができる。
特に、スクリプト処理プロセッサ104は、第三者ウェブポータルと関連付けられているウェブページ特有のスクリプトを実行することができる。ウェブページ特有のスクリプトは、上述したように、クライアントと関連付けられた適切なユーザ名及びパスワードを識別し、ユーザ名及びパスワードを入力し、データの収集を開始してウェブページをナビゲートすることができる。所望のデータがウェブページから収集されると、ネットワーク通信デバイス102は、上記の入力されたデータと関連付けられている次の第三者ウェブポータルにアクセスすることができる。プロセスはその後、対象のすべてのウェブポータル及びすべての請求書データが収集されるまで継続することができる。
対象のすべてのデータが収集されると、データベースプロセッサ106は、各個々のそれぞれの請求書を、クライアントのローカルに与えられる情報に照らして検証することができる。そのため、少なくとも1つの実施態様では、複数の異なる第三者ウェブページのセットにアクセスし、それらのウェブページ各々からデータを収集するために、複数の異なるウェブページ特有のスクリプトを互いに連続して使用することができる。加えて、少なくとも1つの実施態様において、個別のデータセットを探索するために、複数の異なるクライアントによって同じウェブページ特有のスクリプトを使用することができる。
したがって、本発明の実施態様は、当該技術分野に対していくつかの固有の新規の利点を提供する。特に、本発明の実施態様は、様々な固有のウェブページをナビゲートし、不統一に利用可能なデータを収集するために後に使用することができるウェブページ特有のスクリプトを作成する技術的方法を提供する。加えて、本発明の実施態様は、効率における利点をもたらし、大規模データ処理方法及びシステム内の人為的な誤りを低減する。
したがって、図1〜図5及び対応するテキストは、不統一なフォーマットで利用可能なデータをインテリジェントにロードし、第2のデータセットに照らして検証するための1つ又は複数の方法、システム、及び/又は記憶媒体に記憶されている命令を例示又は他の様態で説明する。本発明の実施態様は、特定の結果を達成するための1つ又は複数の動作を含む方法に関して説明することもできることが諒解されよう。たとえば、図6及び対応するテキストは、不統一なフォーマットで記憶されているデータをロードし、第2のデータセットに照らして検証するための一連の動作及び方法の流れ図を示す。下記において、図1〜図5に示す構成要素及びモジュールを参照して図6の動作を説明する。
たとえば、図6は、不統一なフォーマットで記憶されているデータをインテリジェントにロードし検証するための方法の一実施態様の流れ図を示す。方法は、対象のデータエントリを識別する動作600を含むことができる。動作600は、1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップを含むことができる。1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶することができる。たとえば、図1は、ローカルに記憶されている情報を含むことができるローカルデータベースデバイス130を示す。ローカルに記憶されている情報は、クライアント特有のユーザ名及びパスワード、対象のクライアント特有の請求書、対象のクライアント特有の第三者ポータル、並びに、他の同様のクライアント特有の情報を含むことができる。少なくとも1つの実施態様において、サーバコンピュータシステム100は、ローカルデータベースデバイス130に記憶されている情報にアクセスし、この情報を使用してデータを収集することができる。
図6はまた、方法が、第三者ウェブポータルにアクセスする動作610を含むことができることも示している。動作610は、1つ又は複数のデータ構造と関連付けられている情報を含む第三者ウェブポータルにアクセスすることを含むことができる。たとえば、図1は、ネットワーク通信デバイス102を示している。ネットワーク通信デバイス102は、いくつかのウェブサーバ110、及び、対象の識別されている第三者ウェブポータルにアクセスすることができる。
加えて、図6は、方法が、特定のスクリプトを実行する動作620を含むことができることを示している。動作620は、特定の第三者ウェブポータルに固有のものである特定のスクリプトを実行することを含むことができる。たとえば、図1は、ウェブページ特有のスクリプトを作成するために使用することができるスクリプト作成モジュール108を示している。特定のウェブページがアクセスされると、スクリプト処理プロセッサ104は、以前に作成されたウェブページ特有のスクリプトを実行することができる。
図6はまた、方法が、ユーザ入力を模倣する動作630を含むことができることも示している。動作630は、特定のスクリプトは、ユーザ入力デバイスからの入力を模倣することによって、特定の第三者ウェブポータルとやり取りすることを含むことができる。たとえば、スクリプト作成モジュール108は、ユーザのウェブページとのやり取りを記録することができる。記録される対話は、マウス移動、キーボード押下、及び他の同様のユーザのやり取りを含むことができる。スクリプト処理プロセッサ108は、ウェブページ特有のスクリプト内でこれらのやり取りを符号化することができる。後に特定のウェブページにアクセスするときに、スクリプト処理プロセッサ104は、以前に記録されたユーザのやり取りがスクリプト処理プロセッサ104によって模倣されるように、スクリプトを実行することができる。
加えて、図6は、方法が、ウェブポータルとのやり取りを適応させる動作640を含むことができることを示している。動作640は、1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、特定の第三者ウェブポータルとのやり取りを自動的に適応させることを含むことができる。たとえば、図3及び図4は、異なる不統一な様式で利用可能な均等なデータセットを示している。少なくとも1つの実施態様において、スクリプト処理プロセッサ104は、特殊オブジェクトを識別することによって、ウェブページ300、400とのやり取りを自動的に適応させることができる。特に、図3は、ウェブページ300内のスクロールフィールドを制御する特殊オブジェクト332、334、336を含む。少なくとも1つの実施態様において、スクリプト処理プロセッサ104は、必要に応じてすべてのデータにアクセスするようにスクロールバー330をスクロールすることに自動的に適応することができる。
さらに、図6は、方法が、データセットを比較する動作650を含むことができることを示している。動作650は、1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、第2のローカルにアクセス可能なデータベースに記憶されている第2のデータセットと比較することを含むことができる。たとえば、図5は、図3及び図4の不統一に記憶されているデータに均等である第1のデータセット300を示している。データベースプロセッサ106は、第1のデータセット300を、ローカルにアクセス可能なデータセット132と比較することができる。少なくとも1つの実施態様において、ローカルにアクセス可能なデータセット132は、ローカルデータベースデバイス130、異なるローカル記憶デバイスに記憶されているか、又は、他の様態で、ネットワーク接続を通じてローカルに利用可能である。
またさらに、図6は、方法が、報告を生成する動作660を含むことができることを示している。動作660は、比較されたデータに基づいて報告を生成することを含むことができる。報告は、第1のデータセットと第2のデータセットとの間の食い違いの通知を含むことができる。たとえば、図5は、第1のデータセット300及びローカルに記憶されているデータセット132の情報を検証及び比較する報告500を示している。上述したように、生成された報告500は、2つのデータセット間の食い違いの指示を含む。
構造的特徴及び/又は方法的動作に特有の文言において本主題が説明されているが、添付の特許請求の範囲において定義される本主題は必ずしも、記載されている特徴若しくは上述の動作、又は上述した動作の順序に限定されないことが理解されるべきである。そうではなく、記載されている特徴及び動作は、特許請求の範囲を実装する例示的な形態として開示されている。
本発明の実施形態は、たとえば、下記により詳細に説明するように、1つ又は複数のプロセッサ及びシステムメモリのような、コンピュータハードウェアを含む専用又は汎用コンピュータシステムを含むか又は利用することができる。本発明の範囲内の実施形態はまた、コンピュータ実行可能命令及び/又はデータ構造を搬送又は記憶するための物理的及び他のコンピュータ可読媒体をも含む。そのようなコンピュータ可読媒体は、汎用又は専用コンピュータシステムによってアクセスすることができる任意の利用可能な媒体であることができる。コンピュータ実行可能命令及び/又はデータ構造を記憶するコンピュータ可読媒体が、コンピュータ記憶媒体である。コンピュータ実行可能命令及び/又はデータ構造を搬送するコンピュータ可読媒体が、伝送媒体である。したがって、限定ではなく例として、本発明の実施形態は、少なくとも2つの明確に異なる種類のコンピュータ可読媒体、すなわち、コンピュータ記憶媒体及び伝送媒体を含むことができる。
コンピュータ記憶媒体は、コンピュータ実行可能命令及び/又はデータ構造を記憶する物理的記憶媒体である。物理的記憶媒体は、本発明の開示されている機能を実施するために汎用又は専用コンピュータシステムによってアクセス及び実行することができる、RAM、ROM、EEPROM、ソリッドステートドライブ(「SSD」)、フラッシュメモリ、相変化メモリ(「PCM」)、光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、又は、コンピュータ実行可能命令若しくはデータ構造の形態のプログラムコードを記憶するために使用することができる任意の他のハードウェア記憶デバイス(複数可)のようなコンピュータハードウェアを含む。
伝送媒体は、コンピュータ実行可能命令又はデータ構造の形態のプログラムコードを搬送するために使用することができ、汎用又は専用コンピュータシステムによってアクセスすることができる、ネットワーク及び/又はデータリンクを含むことができる。「ネットワーク」は、コンピュータシステム及び/若しくはモジュール並びに/又は他の電子デバイス間で電子データを搬送することを可能にする1つ又は複数のデータリンクとして定義される。ネットワーク又は別の通信接続(有線、ワイヤレス、又は有線若しくは無線の組み合わせのいずれか)を介してコンピュータシステムに情報が転送又は提供されるとき、コンピュータシステムは、この接続を伝送媒体と考えることができる。上記の組み合わせもコンピュータ可読媒体の範囲内に含まれるべきである。
さらに、様々なコンピュータシステム構成要素に達すると、コンピュータ実行可能命令又はデータ構造の形態のプログラムコードは、伝送媒体からコンピュータ記憶媒体に(又はその逆に)自動的に転送することができる。たとえば、ネットワーク又はデータリンクにわたって受信されるコンピュータ実行可能命令又はデータ構造は、ネットワークインターフェースモジュール内のRAM(たとえば、「NIC」)内でバッファリングし、その後、最終的に、コンピュータシステムRAM及び/又はコンピュータシステムにある揮発性の低いコンピュータ可読媒体に転送することができる。したがって、コンピュータ記憶媒体は、伝送媒体をも(又はさらには主として)利用するコンピュータシステム構成要素に含むことができることが理解されるべきである。
コンピュータ実行可能命令は、たとえば、1つ又は複数のプロセッサによって実行されると、汎用コンピュータシステム、専用コンピュータシステム、又は専用処理デバイスに、特定の機能又は一群の機能を実施させる命令及びデータを含む。コンピュータ実行可能命令は、たとえば、アセンブリ言語又はさらにはソースコードのような2進中間フォーマット命令であってもよい。
本発明は、パーソナルコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、メッセージプロセッサ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベース又はプログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、携帯電話、PDA、タブレット、ページャ、ルータ、スイッチなどを含む、多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実践されてもよいことが、当業者には諒解されよう。本発明はまた、ネットワークを通じて(有線データリンク、ワイヤレスデータリンク、又は有線とワイヤレスのデータリンクの組み合わせによって)リンクされているローカル及び遠隔コンピュータシステムの両方がタスクを実施する分散システム環境において実践されてもよい。そのため、分散システム環境において、コンピュータシステムは、複数の構成コンピュータシステムを含んでもよい。分散システム環境において、プログラムモジュールは、ローカル及び遠隔メモリ記憶デバイスの両方に位置してもよい。
本発明は、クラウドコンピューティング環境において実践されてもよいことが、当業者には諒解されよう。クラウドコンピューティング環境は、分散されていてもよいが、これは必須ではない。分散されると、クラウドコンピューティング環境は、組織内で国際的に分散されてもよく、及び/又は、複数の組織にわたって所有されている構成要素を有してもよい。本明細書及び添付の特許請求の範囲において、「クラウドコンピューティング」は、構成可能コンピューティングリソース(たとえば、ネットワーク、サーバ、記憶装置、アプリケーション、及びサービス)の共有プールに対するオンデマンドなネットワークアクセスを可能にするためのモデルとして定義される。「クラウドコンピューティング」の定義は、適切に展開されたときにそのようなモデルから得ることができる他の多数の利点のいずれにも限定されない。
クラウドコンピューティングモデルは、オンデマンドセルフサービス、幅広いネットワークアクセス、リソースプーリング、迅速な弾力性、サービスが計測可能であることなどのような、様々な特性から構成することができる。クラウドコンピューティングモデルはまた、たとえば、サービス型ソフトウェア(「SaaS」)、サービス型プラットフォーム(「PaaS」)、及びサービス型インフラストラクチャ(「IaaS」)のような様々なサービスモデルの形態になってもよい。クラウドコンピューティングモデルはまた、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウドなどのような種々の展開モデルを使用して展開されてもよい。
クラウドコンピューティング環境のようないくつかの実施形態は、各々1つ又は複数の仮想機械を作動させることが可能である1つ又は複数のホストを含むシステムを含んでもよい。動作中、仮想機械は、オペレーティングシステム、及び、可能性として1つ又は複数の他のアプリケーションをもサポートする動作可能コンピューティングシステムをエミュレートする。いくつかの実施形態において、各ホストは、仮想機械の視点から抽象化される物理リソースを使用して仮想機械の仮想リソースをエミュレートするハイパーバイザを含む。ハイパーバイザはまた、仮想機械の間の適切な分離も可能にする。したがって、任意の所与の仮想機械の観点から、ハイパーバイザは、たとえ仮想機械が物理リソースの見かけ(たとえば、仮想リソース)とやりとりしているだけであっても、仮想機械が物理リソースとやり取りしているという錯覚を与える。処理容量、メモリ、ディスク空き容量、ネットワーク帯域幅、メディアドライブなどを含む物理リソースの例。
本発明は、本発明の趣旨又は本質的特質から逸脱することなく、他の特定の形態で具現化されてもよい。記載されている実施形態は、すべての点において限定ではなく例示としてのみ解釈されるべきである。それゆえ、本発明の範囲は、上記の説明ではなく添付の特許請求の範囲によって示される。特許請求項の意味及び均等である範囲内に入るすべての変更は、特許請求項の範囲内に包含されるべきである。
[発明の項目]
[項目1]
不統一なフォーマットのデータをインテリジェントにロードし、第2のデータセットに照らして検証するサーバコンピュータシステムにおいて、不統一に記憶されているデータセットにアクセスし、該データセットを比較するための、コンピュータ化された方法であって、
1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップであって、前記1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶されている、識別するステップと、
特定の第三者ウェブポータルにアクセスするステップであって、前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報を含む、アクセスするステップと、
前記特定の第三者ウェブポータルに特有のものである特定のスクリプトを実行するステップであって、前記特定のスクリプトは、
ユーザ入力デバイスからの入力を模倣することによって、前記特定の第三者ウェブポータルとやり取りし、
1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させる
方法を実施する、特定のスクリプトを実行するステップと、
前記1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、第2のローカルにアクセス可能なデータベースに記憶されている前記第2のデータセットと比較するステップと、
比較された前記データに基づいて報告を生成するステップであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、生成するステップと、
を含む、コンピュータ化された方法。
[項目2]
前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報に基づいて第三者ウェブポータルのセットから選択される、項目1に記載のコンピュータ化された方法。
[項目3]
第1のローカルに記憶されているデータファイルを有する前記第2のデータセットにアクセスするステップであって、前記第2のデータセットは1つ又は複数の請求書を含む、アクセスするステップと、
前記第1のデータセット内のデータエントリ及び関連するデータ要素を識別するステップと、
前記データ要素のうちの1つ又は複数が、前記第2のデータセット内の対応するデータエントリの前記データ要素と異なることを判定するステップと、
異なる前記データ要素を識別する報告を生成するステップと、
をさらに含む、項目2に記載のコンピュータ化された方法。
[項目4]
特定のクライアントの記録を比較するための指示を受信するステップと、
データストア内で、対象の前記特定のデータエントリにアクセスするステップであって、前記対象の特定のデータエントリは、前記特定のクライアントと関連付けられている1つ又は複数の第三者ウェブポータルを含む、対象の前記特定のデータエントリにアクセスするステップと、
前記1つ又は複数の第三者ウェブポータルの各々に自動的にアクセスするステップと、
前記1つ又は複数の第三者ウェブポータルの各々に対して、各それぞれの第三者ウェブポータルに固有のものであるスクリプトを自動的に実行するステップと、
をさらに備える、項目1に記載のコンピュータ化された方法。
[項目5]
前記スクリプトを作成することは、
前記システム内の記録特徴部を作動させるステップであって、前記記録特徴部は、ユーザと前記システムとの間の1つ又は複数の入力信号及び出力信号をキャプチャする、作動させるステップと、
ユーザマウス及びユーザキーボードから受信される入力信号をキャプチャ及び記録するステップであって、前記入力信号は、1つ又は複数の第三者ウェブポータルアドレスを含む、入力信号をキャプチャ及び記録するステップと、
前記1つ又は複数の第三者ウェブポータルアドレスと関連付けられている1つ又は複数の第三者ウェブポータルから受信される出力信号をキャプチャ及び記録するステップであって、前記出力信号は、前記入力信号に応答して表示される1つ又は複数のウェブページを含む、出力信号をキャプチャ及び記録するステップと、
それぞれの入力信号と関連付けられている1つ又は複数の出力信号を識別するステップと、
前記1つ又は複数の不統一に利用可能なデータフィールドを識別するステップと、
を含む、項目1に記載のコンピュータ化された方法。
[項目6]
ユーザから、ウェブページ内の特定の要素に関する指示を受信するステップであって、前記要素は、不統一に利用可能なデータフィールドと関連付けられる、受信するステップと、
前記特定の要素を、前記第2のデータセット内の特定のデータフィールドにマッピングするステップと、
をさらに含む、項目5に記載のコンピュータ化された方法。
[項目7]
前記スクリプトを実行するステップは、
キャプチャ及び記録されている前記入力信号に従って前記ユーザマウスを移動させるためのコマンドを自動的に生成するステップと、
1つ又は複数のコマンドを発行させた後、対応する出力信号が受信されるまで待つステップであって、前記対応する出力信号は、以前にキャプチャ及び記録されている出力信号と対応する、待つステップと、
を含む、項目6に記載のコンピュータ化された方法。
[項目8]
前記ウェブページ内の前記特定の要素を識別するステップと、
前記ウェブページ内の前記特定の要素と位置的に関連付けられているデータフィールドからの1つ又は複数のデータ要素をパースするステップと、
前記第2のデータセット内の前記特定のデータフィールドにアクセスするステップと、
パースされている前記1つ又は複数のデータ要素と前記特定のデータフィールドからのデータ要素との間の食い違いを識別するステップと、
をさらに含む、項目7に記載のコンピュータ化された方法。
[項目9]
1つ又は複数のデータ要素をパースするステップは、前記ウェブページ上では見えないが、ローカルメモリ内には存在する1つ又は複数のデータ要素をパースするステップを含む、項目8に記載のコンピュータ化された方法。
[項目10]
前記ウェブページ上では見えず、ローカルメモリ内に存在しない、前記ウェブページ内の前記特定の要素と位置的に関連付けられている前記データフィールドからの1つ又は複数の要素を識別するステップと、
データフィールド前進要素を識別することによって、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させるステップであって、前記データフィールド前進要素は、前記データフィールド内に追加の要素を表示するためのコマンドを含む、適応させるステップと、
1つ又は複数のユーザ入力を模倣することによって、前記データフィールド前進要素を作動させるステップと、
以前は前記ウェブページ上で見えていなかったが、前記データフィールドの前記前進に起因して現在は見えている1つ又は複数のデータ要素をパースするステップと、
をさらに含む、項目8に記載のコンピュータ化された方法。
[項目11]
様々な固有の不統一な第三者ウェブポータルからの、不統一に提示されるデータをパースするための、サーバコンピュータシステムであって、
1つ又は複数の第三者ウェブポータルへのアドレスを含む1つ又は複数のデータ構造を備えるローカルデータベースデバイスと、
ウェブブラウザを含むネットワーク通信デバイスであって、前記ウェブブラウザは、前記1つ又は複数の第三者ウェブポータルに自動的にアクセスするように構成されている、ネットワーク通信デバイスと、
前記ネットワーク通信デバイスによってアクセスされる前記1つ又は複数の第三者ウェブポータルの各々について、ウェブポータル特有のスクリプトを自動的に実行するように構成されているスクリプト処理プロセッサであって、前記ウェブポータル特有のスクリプトの各々は、
ユーザ入力デバイスからの入力を模倣することによって、前記1つ又は複数の第三者ウェブポータルの各々とやり取りし、
1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記1つ又は複数の第三者ウェブポータルの各々とのやり取りを自動的に適応させるように構成されている、スクリプト処理プロセッサと、
前記1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、前記ローカルデータベースデバイスに記憶されている第2のデータセットと比較するように構成されているデータベースプロセッサと、
比較された前記データに基づいて報告を表示するように構成されているユーザ出力デバイスであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、ユーザ出力デバイスと、
を備える、サーバコンピュータシステム。
[項目12]
前記サーバコンピュータシステムはスクリプト作成モジュールをさらに備え、前記スクリプト作成モジュールは、
ユーザマウス及びユーザキーボードから受信される入力信号をキャプチャ及び記録するステップであって、前記入力信号は、1つ又は複数の第三者ウェブポータルアドレスを含む、入力信号をキャプチャ及び記録するステップと、
前記1つ又は複数の第三者ウェブポータルアドレスと関連付けられている1つ又は複数の第三者ウェブポータルから受信される出力信号をキャプチャ及び記録するステップであって、前記出力信号は、前記入力信号に応答して表示される1つ又は複数のウェブページ要素を含む、出力信号をキャプチャ及び記録するステップと、
それぞれの入力信号と関連付けられている1つ又は複数の出力信号を識別するステップと、
前記1つ又は複数の不統一に利用可能なデータフィールドを識別するステップと、
を行うように構成されている、項目11に記載のサーバコンピュータシステム。
[項目13]
前記スクリプト作成モジュールは、
ユーザから、ウェブページ内の特定の要素に関する指示を受信するステップであって、前記要素は、不統一に利用可能なデータフィールドと関連付けられる、受信するステップと、
前記特定の要素を、前記第2のデータセット内の特定のデータフィールドにマッピングするステップと、
を行うようにさらに構成されている、項目12に記載のサーバコンピュータシステム。
[項目14]
前記スクリプト処理プロセッサは、
キャプチャ及び記録されている前記入力信号に従ってマウスを移動させるためのコマンドを自動的に生成するステップと、
1つ又は複数のコマンドを発行させた後、対応する出力信号が受信されるまで待つステップであって、前記対応する出力信号は、以前にキャプチャ及び記録されている出力信号と対応する、待つステップと、
を行うようにさらに構成されている、項目13に記載のサーバコンピュータシステム。
[項目15]
前記スクリプト処理プロセッサは、
前記ウェブページ内の前記特定の要素を識別するステップと、
前記ウェブページ内の前記特定の要素と位置的に関連付けられているデータフィールドからの1つ又は複数のデータ要素をパースするステップと、
前記第2のデータセット内の前記特定のデータフィールドにアクセスするステップと、
パースされている前記1つ又は複数のデータ要素と前記特定のデータフィールドからのデータ要素との間の食い違いを識別するステップと、
を行うようにさらに構成されている、項目14に記載のサーバコンピュータシステム。
[項目16]
前記スクリプト処理プロセッサは、
前記ウェブページ上では見えず、ローカルメモリ内にも存在しない、前記ウェブページ内の前記特定の要素と位置的に関連付けられている前記データフィールドからの1つ又は複数の要素を識別するステップと、
データフィールド前進要素を識別することによって、前進特定の第三者ウェブポータルとのやり取りを自動的に適応させるステップであって、前記データフィールド前進要素は、前記データフィールド内に追加の要素を表示するためのコマンドを含む、適応させるステップと、
1つ又は複数のユーザ入力を模倣することによって、前記データフィールド前進要素を作動させるステップと、
以前は前記ウェブページ上で見えていなかったが、前記データフィールドの前記前進に起因して現在は見えている1つ又は複数のデータ要素をパースするステップと、
を行うようにさらに構成されている、項目15に記載のサーバコンピュータシステム。
[項目17]
関連するウェブページがアクセスされると、前記スクリプト処理プロセッサによって実行される1つ又は複数のハンドコード化されたウェブポータル特有のスクリプトをさらに備える、項目11に記載のサーバコンピュータシステム。
[項目18]
前記サーバコンピュータシステムは、ウェブページ上の1つ又は複数の画像内のテキストを認識するように構成されている光学文字認識モジュールをさらに備え、前記スクリプト処理プロセッサは、認識された前記テキストからの情報を1つ又は複数のスクリプトに組み込むことができる、項目11に記載のサーバコンピュータシステム。
[項目19]
認識された前記テキストは、前記1つ又は複数の不統一に利用可能なデータフィールドに関係する情報を含む、項目18に記載のサーバコンピュータシステム。
[項目20]
コンピュータシステムにおいて使用するためのコンピュータプログラム製品であって、該コンピュータプログラム製品は、コンピュータ実行可能命令が記憶されている1つ又は複数のコンピュータ記憶媒体を備え、該コンピュータ実行可能命令は、プロセッサによって実行されると、前記コンピュータシステムに、不統一に記憶されているデータセットにアクセスし、該データセットを比較する方法を実施させ、該コンピュータプログラム製品は、
1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップであって、前記1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶されている、識別するステップと、
特定の第三者ウェブポータルにアクセスするステップであって、前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報を含む、アクセスするステップと、
前記特定の第三者ウェブポータルに特有のものである特定のスクリプトを実行するステップであって、前記特定のスクリプトは、
ユーザ入力デバイスからの入力を模倣することによって、前記特定の第三者ウェブポータルとやり取りし、
1つ又は複数の不統一に利用可能なデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させる
方法を実施する、特定のスクリプトを実行するステップと、
前記1つ又は複数の不統一に利用可能なデータフィールドから受信される第1のデータセットを、第2のローカルにアクセス可能なデータベースに記憶されている前記第2のデータセットと比較するステップと、
比較された前記データに基づいて報告を生成するステップであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、生成するステップと、
を含む、コンピュータシステムにおいて使用するためのコンピュータプログラム製品。

Claims (21)

  1. 不統一なフォーマットのデータをインテリジェントにロードし、第2のデータセットに照らして検証するサーバコンピュータシステムにおいて、不統一に記憶されているデータセットにアクセスし、該データセットを比較するための、コンピュータ化された方法であって、
    1つ又は複数の第三者ウェブポータルへのアドレスを含む1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップであって、前記1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶されている、識別するステップと、
    特定の第三者ウェブポータルにアクセスするステップであって、前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報を含む、アクセスするステップと、
    前記特定の第三者ウェブポータルに特有のものである特定のスクリプトを実行するステップであって、前記特定のスクリプトは、
    前記特定の第三者ウェブポータルの一つ又は複数の画像内のテキストを認識するために光学文字認識モジュールを作動させ、
    ユーザ入力デバイスからの入力を模倣することによって、前記特定の第三者ウェブポータルとやり取りし、
    不統一なフォーマットで利用可能な1つ又は複数のデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させる
    方法を実施する、特定のスクリプトを実行するステップと、
    不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドから受信される第1のデータセットを、第2のローカルにアクセス可能なデータベースに記憶されている前記第2のデータセットと比較するステップと、
    比較された前記データに基づいて報告を生成するステップであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、生成するステップと、

    を含む、コンピュータ化された方法。
  2. 前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報に基づいて第三者ウェブポータルのセットから選択される、請求項1に記載のコンピュータ化された方法。
  3. 第1のローカルに記憶されているデータファイルを有する前記第2のデータセットにアクセスするステップであって、前記第2のデータセットは1つ又は複数の請求書を含む、アクセスするステップと、
    前記第1のデータセット内のデータエントリ及び関連するデータ要素を識別するステップと、
    前記データ要素のうちの1つ又は複数が、前記第2のデータセット内の対応するデータエントリの前記データ要素と異なることを判定するステップと、
    異なる前記データ要素を識別する報告を生成するステップと、
    をさらに含む、請求項2に記載のコンピュータ化された方法。
  4. 特定のクライアントの記録を比較するための指示を受信するステップと、
    データストア内で、対象の前記特定のデータエントリにアクセスするステップであって、前記対象の特定のデータエントリは、前記特定のクライアントと関連付けられている1つ又は複数の第三者ウェブポータルを含む、対象の前記特定のデータエントリにアクセスするステップと、
    前記1つ又は複数の第三者ウェブポータルの各々に自動的にアクセスするステップと、
    前記1つ又は複数の第三者ウェブポータルの各々に対して、各それぞれの第三者ウェブポータルに固有のものであるスクリプトを自動的に実行するステップと、
    をさらに備える、請求項1に記載のコンピュータ化された方法。
  5. 前記スクリプトを作成することは、
    前記システム内の記録特徴部を作動させるステップであって、前記記録特徴部は、ユーザと前記システムとの間の1つ又は複数の入力信号及び出力信号をキャプチャする、作動させるステップと、
    ユーザマウス及びユーザキーボードから受信される入力信号をキャプチャ及び記録するステップであって、前記入力信号は、1つ又は複数の第三者ウェブポータルアドレスを含む、入力信号をキャプチャ及び記録するステップと、
    前記1つ又は複数の第三者ウェブポータルアドレスと関連付けられている1つ又は複数の第三者ウェブポータルから受信される出力信号をキャプチャ及び記録するステップであって、前記出力信号は、前記入力信号に応答して表示される1つ又は複数のウェブページを含む、出力信号をキャプチャ及び記録するステップと、
    それぞれの入力信号と関連付けられている1つ又は複数の出力信号を識別するステップと、
    不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドを識別するステップと、
    を含む、請求項1に記載のコンピュータ化された方法。
  6. ユーザから、ウェブページ内の特定の要素に関する指示を受信するステップであって、前記要素は、不統一なフォーマットで利用可能なデータフィールドと関連付けられる、受信するステップと、
    前記特定の要素を、前記第2のデータセット内の特定のデータフィールドにマッピングするステップと、
    をさらに含む、請求項5に記載のコンピュータ化された方法。
  7. 前記スクリプトを実行するステップは、
    キャプチャ及び記録されている前記入力信号に従って前記ユーザマウスを移動させるためのコマンドを自動的に生成するステップと、
    1つ又は複数のコマンドを発行させた後、対応する出力信号が受信されるまで待つステップであって、前記対応する出力信号は、以前にキャプチャ及び記録されている出力信号と対応する、待つステップと、
    を含む、請求項6に記載のコンピュータ化された方法。
  8. 前記ウェブページ内の前記特定の要素を識別するステップと、
    前記ウェブページ内の前記特定の要素と位置的に関連付けられているデータフィールドからの1つ又は複数のデータ要素をパースするステップと、
    前記第2のデータセット内の前記特定のデータフィールドにアクセスするステップと、
    パースされている前記1つ又は複数のデータ要素と前記特定のデータフィールドからのデータ要素との間の食い違いを識別するステップと、
    をさらに含む、請求項7に記載のコンピュータ化された方法。
  9. 1つ又は複数のデータ要素をパースするステップは、前記ウェブページ上では見えないが、ローカルメモリ内には存在する1つ又は複数のデータ要素をパースするステップを含む、請求項8に記載のコンピュータ化された方法。
  10. 前記ウェブページ上では見えず、ローカルメモリ内に存在しない、前記ウェブページ内の前記特定の要素と位置的に関連付けられている前記データフィールドからの1つ又は複数の要素を識別するステップと、
    データフィールド前進要素を識別することによって、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させるステップであって、前記データフィールド前進要素は、前記データフィールド内に追加の要素を表示するためのコマンドを含む、適応させるステップと、
    1つ又は複数のユーザ入力を模倣することによって、前記データフィールド前進要素を作動させるステップと、
    以前は前記ウェブページ上で見えていなかったが、前記データフィールドの前記前進に起因して現在は見えている1つ又は複数のデータ要素をパースするステップと、
    をさらに含む、請求項8に記載のコンピュータ化された方法。
  11. 様々な固有の不統一な第三者ウェブポータルからの、不統一に提示されるデータをパースするための、サーバコンピュータシステムであって、
    1つ又は複数の第三者ウェブポータルへのアドレスを含む1つ又は複数のデータ構造を備えるローカルデータベースデバイスと、
    ウェブブラウザを含むネットワーク通信デバイスであって、前記ウェブブラウザは、前記1つ又は複数の第三者ウェブポータルに自動的にアクセスするように構成されている、ネットワーク通信デバイスと、
    前記ネットワーク通信デバイスによってアクセスされる前記1つ又は複数の第三者ウェブポータルの各々について、ウェブポータル特有のスクリプトを自動的に実行するように構成されているスクリプト処理プロセッサであって、前記ウェブポータル特有のスクリプトの各々は、
    前記第三者ウェブポータルの一つ又は複数の画像内のテキストを認識するために光学文字認識モジュールを作動させ、
    ユーザ入力デバイスからの入力を模倣することによって、前記1つ又は複数の第三者ウェブポータルの各々とやり取りし、
    不統一なフォーマットで利用可能な1つ又は複数のデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記1つ又は複数の第三者ウェブポータルの各々とのやり取りを自動的に適応させるように構成されている、スクリプト処理プロセッサと、
    不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドから受信される第1のデータセットを、前記ローカルデータベースデバイスに記憶されている第2のデータセットと比較するように構成されているデータベースプロセッサと、
    比較された前記データに基づいて報告を表示するように構成されているユーザ出力デバイスであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、ユーザ出力デバイスと、
    を備える、サーバコンピュータシステム。
  12. 前記サーバコンピュータシステムはスクリプト作成モジュールをさらに備え、前記スクリプト作成モジュールは、
    ユーザマウス及びユーザキーボードから受信される入力信号をキャプチャ及び記録するステップであって、前記入力信号は、1つ又は複数の第三者ウェブポータルアドレスを含む、入力信号をキャプチャ及び記録するステップと、
    前記1つ又は複数の第三者ウェブポータルアドレスと関連付けられている1つ又は複数の第三者ウェブポータルから受信される出力信号をキャプチャ及び記録するステップであって、前記出力信号は、前記入力信号に応答して表示される1つ又は複数のウェブページ要素を含む、出力信号をキャプチャ及び記録するステップと、
    それぞれの入力信号と関連付けられている1つ又は複数の出力信号を識別するステップと、
    不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドを識別するステップと、
    を行うように構成されている、請求項11に記載のサーバコンピュータシステム。
  13. 前記スクリプト作成モジュールは、
    ユーザから、ウェブページ内の特定の要素に関する指示を受信するステップであって、前記要素は、不統一なフォーマットで利用可能なデータフィールドと関連付けられる、受信するステップと、
    前記特定の要素を、前記第2のデータセット内の特定のデータフィールドにマッピングするステップと、
    を行うようにさらに構成されている、請求項12に記載のサーバコンピュータシステム。
  14. 前記スクリプト処理プロセッサは、
    キャプチャ及び記録されている前記入力信号に従ってマウスを移動させるためのコマンドを自動的に生成するステップと、
    1つ又は複数のコマンドを発行させた後、対応する出力信号が受信されるまで待つステップであって、前記対応する出力信号は、以前にキャプチャ及び記録されている出力信号と対応する、待つステップと、
    を行うようにさらに構成されている、請求項13に記載のサーバコンピュータシステム。
  15. 前記スクリプト処理プロセッサは、
    前記ウェブページ内の前記特定の要素を識別するステップと、
    前記ウェブページ内の前記特定の要素と位置的に関連付けられているデータフィールドからの1つ又は複数のデータ要素をパースするステップと、
    前記第2のデータセット内の前記特定のデータフィールドにアクセスするステップと、
    パースされている前記1つ又は複数のデータ要素と前記特定のデータフィールドからのデータ要素との間の食い違いを識別するステップと、
    を行うようにさらに構成されている、請求項14に記載のサーバコンピュータシステム。
  16. 前記スクリプト処理プロセッサは、
    前記ウェブページ上では見えず、ローカルメモリ内にも存在しない、前記ウェブページ内の前記特定の要素と位置的に関連付けられている前記データフィールドからの1つ又は複数の要素を識別するステップと、
    データフィールド前進要素を識別することによって、前進特定の第三者ウェブポータルとのやり取りを自動的に適応させるステップであって、前記データフィールド前進要素は、前記データフィールド内に追加の要素を表示するためのコマンドを含む、適応させるステップと、
    1つ又は複数のユーザ入力を模倣することによって、前記データフィールド前進要素を作動させるステップと、
    以前は前記ウェブページ上で見えていなかったが、前記データフィールドの前記前進に起因して現在は見えている1つ又は複数のデータ要素をパースするステップと、
    を行うようにさらに構成されている、請求項15に記載のサーバコンピュータシステム。
  17. 関連するウェブページがアクセスされると、前記スクリプト処理プロセッサによって実行される1つ又は複数のハンドコード化されたウェブポータル特有のスクリプトをさらに備える、請求項11に記載のサーバコンピュータシステム。
  18. 前記サーバコンピュータシステムは、ウェブページ上の1つ又は複数の画像内のテキストを認識するように構成されている光学文字認識モジュールをさらに備え、前記スクリプト処理プロセッサは、認識された前記テキストからの情報を1つ又は複数のスクリプトに組み込むことができる、請求項11に記載のサーバコンピュータシステム。
  19. 認識された前記テキストは、不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドに関係する情報を含む、請求項18に記載のサーバコンピュータシステム。
  20. コンピュータシステムにおいて使用するためのコンピュータプログラムであって、該コンピュータプログラムは、コンピュータ実行可能命令の形態であり、該コンピュータ実行可能命令は、プロセッサによって実行されると、前記コンピュータシステムに、不統一に記憶されているデータセットにアクセスし、該データセットを比較する方法を実施させ、該コンピュータプログラムは
    1つ又は複数の第三者ウェブポータルへのアドレスを含む1つ又は複数のデータ構造内で、対象の特定のデータエントリを識別するステップであって、前記1つ又は複数のデータ構造は、第1のローカルにアクセス可能なデータベースに記憶されている、識別するステップと、
    特定の第三者ウェブポータルにアクセスするステップであって、前記特定の第三者ウェブポータルは、前記1つ又は複数のデータ構造と関連付けられている情報を含む、アクセスするステップと、
    前記特定の第三者ウェブポータルに特有のものである特定のスクリプトを実行するステップであって、前記特定のスクリプトは、
    前記特定の第三者ウェブポータルの一つ又は複数の画像内のテキストを認識するために光学文字認識モジュールを作動させ、
    ユーザ入力デバイスからの入力を模倣することによって、前記特定の第三者ウェブポータルとやり取りし、
    不統一なフォーマットで利用可能な1つ又は複数のデータフィールドからのデータ要素にアクセスし、該データ要素をパースするように、前記特定の第三者ウェブポータルとのやり取りを自動的に適応させる
    方法を実施する、特定のスクリプトを実行するステップと、
    不統一なフォーマットで利用可能な前記1つ又は複数のデータフィールドから受信される第1のデータセットを、第2のローカルにアクセス可能なデータベースに記憶されている第2のデータセットと比較するステップと、
    比較された前記データに基づいて報告を生成するステップであって、前記報告は、前記第1のデータセットと前記第2のデータセットとの間の食い違いの通知を含む、生成するステップと、
    を含む、コンピュータシステムにおいて使用するためのコンピュータプログラム。
  21. 請求項20に記載のコンピュータプログラムが記憶されているコンピュータ記憶媒体。
JP2016561778A 2015-02-11 2015-04-27 自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体 Active JP6603866B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/619,751 US10489377B2 (en) 2015-02-11 2015-02-11 Automated intelligent data scraping and verification
US14/619,751 2015-02-11
PCT/MX2015/000069 WO2016129984A1 (es) 2015-02-11 2015-04-27 Extracción y verificación de datos inteligente y automatizada

Publications (2)

Publication Number Publication Date
JP2018513426A JP2018513426A (ja) 2018-05-24
JP6603866B2 true JP6603866B2 (ja) 2019-11-13

Family

ID=53396258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016561778A Active JP6603866B2 (ja) 2015-02-11 2015-04-27 自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体

Country Status (11)

Country Link
US (2) US10489377B2 (ja)
EP (1) EP3057040A1 (ja)
JP (1) JP6603866B2 (ja)
CN (1) CN106796597B (ja)
AR (1) AR103669A1 (ja)
AU (1) AU2015381978B2 (ja)
BR (1) BR112015015647B1 (ja)
CA (1) CA2944601C (ja)
MX (1) MX366930B (ja)
RU (1) RU2699400C2 (ja)
WO (1) WO2016129984A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489377B2 (en) 2015-02-11 2019-11-26 Best Collect, S.A. De C.V. Automated intelligent data scraping and verification
EP3271837A4 (en) * 2015-03-17 2018-08-01 VM-Robot, Inc. Web browsing robot system and method
US11570188B2 (en) * 2015-12-28 2023-01-31 Sixgill Ltd. Dark web monitoring, analysis and alert system and method
US10776838B2 (en) * 2016-03-01 2020-09-15 Mx Technologies, Inc. Item level data aggregation
US10984003B2 (en) * 2017-09-16 2021-04-20 Fujitsu Limited Report generation for a digital task
CN108334619A (zh) * 2018-02-07 2018-07-27 政采云有限公司 一种数据采集方法、装置、计算设备及存储介质
KR101982085B1 (ko) * 2018-04-25 2019-05-27 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
US10810020B2 (en) * 2018-10-18 2020-10-20 EMC IP Holding Company LLC Configuring a device using an automated manual process bridge
US10719573B2 (en) 2018-10-31 2020-07-21 Flinks Technology Inc. Systems and methods for retrieving web data
US11245719B2 (en) * 2019-01-11 2022-02-08 Oracle International Corporation Systems and methods for enhanced host classification
KR102475305B1 (ko) * 2019-10-16 2022-12-12 카페24 주식회사 이종 플랫폼 간의 자동 연동 방법, 장치 및 시스템
KR102396110B1 (ko) * 2019-10-16 2022-05-19 카페24 주식회사 이종 쇼핑몰 간의 연동 방법
WO2022220311A1 (ko) * 2021-04-12 2022-10-20 카페24 주식회사 이종 플랫폼 간의 자동 연동 방법, 장치 및 시스템
US20230244502A1 (en) * 2022-02-03 2023-08-03 Capital One Services, Llc Executing automated browsing sessions

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083068A1 (en) 2000-10-30 2002-06-27 Quass Dallan W. Method and apparatus for filling out electronic forms
US20060200754A1 (en) 2001-10-24 2006-09-07 Infosnap Systems and methods for storing personal information, automatically filling out forms, and sharing information with a data recipient
US7561734B1 (en) 2002-03-02 2009-07-14 Science Applications International Corporation Machine learning of document templates for data extraction
US7343551B1 (en) 2002-11-27 2008-03-11 Adobe Systems Incorporated Autocompleting form fields based on previously entered values
US7761787B2 (en) 2002-12-02 2010-07-20 Siemens Medical Solutions Usa, Inc. Document generation system and user interface for producing a user desired document
JP2005316534A (ja) 2004-04-27 2005-11-10 A Line Kk 電子商取引システム
US7660779B2 (en) 2004-05-12 2010-02-09 Microsoft Corporation Intelligent autofill
JP2006048144A (ja) 2004-07-30 2006-02-16 Tenik Kk 自動巡回装置,クライアント端末および自動巡回方法
US8032823B2 (en) 2005-04-15 2011-10-04 Carnegie Mellon University Intent-based information processing and updates
EP1777629A1 (en) 2005-10-19 2007-04-25 NTT DoCoMo, Inc. Method and apparatus for automatic form filling
US9430455B2 (en) 2005-12-15 2016-08-30 Simpliance, Inc. Methods and systems for intelligent form-filling and electronic document generation
US8775919B2 (en) * 2006-04-25 2014-07-08 Adobe Systems Incorporated Independent actionscript analytics tools and techniques
US9069745B2 (en) 2007-01-16 2015-06-30 Ebay, Inc. Electronic form automation
US7941740B2 (en) * 2007-07-10 2011-05-10 Yahoo! Inc. Automatically fetching web content with user assistance
US8214362B1 (en) 2007-09-07 2012-07-03 Google Inc. Intelligent identification of form field elements
US8713029B2 (en) 2007-11-05 2014-04-29 Verizon Patent And Licensing Inc. Method and apparatus for providing auto-completion of information
KR20100106333A (ko) 2007-12-10 2010-10-01 인터내셔널 비지네스 머신즈 코포레이션 데이터를 웹 페이지에 입력하는 방법 및 시스템
US20100205529A1 (en) * 2009-02-09 2010-08-12 Emma Noya Butin Device, system, and method for creating interactive guidance with execution of operations
US9569231B2 (en) * 2009-02-09 2017-02-14 Kryon Systems Ltd. Device, system, and method for providing interactive guidance with execution of operations
CN102667761B (zh) * 2009-06-19 2015-05-27 布雷克公司 可扩展的集群数据库
WO2011097593A1 (en) 2010-02-05 2011-08-11 Medversant Technologies, Llc System and method for visually mapping and automatically completing electronic forms
FI20105701A (fi) 2010-06-17 2011-12-18 Itella Oyj Menetelmä ja järjestelmä viestintäverkossa toimittajien kontaktointiin
US8713168B2 (en) 2010-09-22 2014-04-29 The Nielsen Company (Us), Llc Methods and apparatus to determine impressions using distributed demographic information
US20120191619A1 (en) * 2011-01-20 2012-07-26 John Nicholas Gross System & Method For Locating & Assessing Intellectual Property Assets
JP2013011999A (ja) * 2011-06-28 2013-01-17 Yahoo Japan Corp トピック変化検出装置及び方法
US8976955B2 (en) * 2011-11-28 2015-03-10 Nice-Systems Ltd. System and method for tracking web interactions with real time analytics
JP5764080B2 (ja) * 2012-03-02 2015-08-12 株式会社栗本鐵工所 Web検索システムおよびWeb検索方法
AU2013206449A1 (en) 2012-06-20 2014-01-16 Visa International Service Association Multi-channel remote payment apparatuses, methods and systems
US9639597B2 (en) 2012-10-30 2017-05-02 FHOOSH, Inc. Collecting and classifying user information into dynamically-updated user profiles
US9836775B2 (en) * 2013-05-24 2017-12-05 Ficstar Software, Inc. System and method for synchronized web scraping
US9741059B1 (en) * 2014-05-23 2017-08-22 Intuit Inc. System and method for managing website scripts
US10489377B2 (en) * 2015-02-11 2019-11-26 Best Collect, S.A. De C.V. Automated intelligent data scraping and verification
WO2017062678A1 (en) * 2015-10-07 2017-04-13 Impossible Ventures, LLC Automated extraction of data from web pages
US10984003B2 (en) * 2017-09-16 2021-04-20 Fujitsu Limited Report generation for a digital task

Also Published As

Publication number Publication date
BR112015015647A8 (pt) 2022-08-09
RU2699400C2 (ru) 2019-09-05
RU2016139156A3 (ja) 2018-10-22
AU2015381978B2 (en) 2021-02-04
MX2015007187A (es) 2017-03-14
US20200057759A1 (en) 2020-02-20
CN106796597A (zh) 2017-05-31
AR103669A1 (es) 2017-05-24
CN106796597B (zh) 2020-12-22
RU2016139156A (ru) 2018-04-25
US10489377B2 (en) 2019-11-26
MX366930B (es) 2019-07-31
BR112015015647B1 (pt) 2023-01-24
EP3057040A1 (en) 2016-08-17
CA2944601C (en) 2022-10-18
AU2015381978A1 (en) 2016-11-03
US11188519B2 (en) 2021-11-30
CA2944601A1 (en) 2016-08-18
WO2016129984A1 (es) 2016-08-18
JP2018513426A (ja) 2018-05-24
BR112015015647A2 (pt) 2017-07-11
US20160232194A1 (en) 2016-08-11

Similar Documents

Publication Publication Date Title
JP6603866B2 (ja) 自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体
US9898497B2 (en) Validating coherency between multiple data sets between database transfers
US10678632B2 (en) Extract-transform-load diagnostics
US9424481B2 (en) Screenshot database for application verification
US10021001B2 (en) Providing visualizations of event sequence data
US10013239B2 (en) Metadata driven real-time analytics framework
CN110222036B (zh) 用于自动数据库迁移的方法和系统
US10361944B2 (en) Automated test for uniform web service interfaces
US20150106723A1 (en) Tools for locating, curating, editing, and using content of an online library
US20160019464A1 (en) Adapting digital content based upon usage patterns
US10261808B2 (en) Access operation with dynamic linking and access of data within plural data sources
US11029802B2 (en) Automated command-line interface
US20200050540A1 (en) Interactive automation test
US10789264B2 (en) Automating configuration of operational data pipelines for extraction, transformation and load
US20190179664A1 (en) System and method for provisioning integration infrastructure at runtime indifferent to hybrid nature of endpoint applications
CN111919228A (zh) 灵活的能源信息聚合
US20170075727A1 (en) Configuration management for a shared pool of configurable computing resources
US11836510B2 (en) Snapshot capture of computing device user interfaces
CN115334064B (zh) 一种配置系统的生成方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190319

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190730

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190913

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190920

R150 Certificate of patent or registration of utility model

Ref document number: 6603866

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250