3

Webページを取得して、ページからアドレス情報を抽出する必要があります。他のものより簡単なものもあります。これを実行するのに役立つFirefoxプラグイン、Windowsアプリ、またはVB.NETコードを探しています。

理想的には、管理者(ASP.NET/VB.NET)にURLを入力すると、ページがスクラップされ、グリッドに配置できるデータセットが返されるWebページが必要です。

4

4 に答える 4

1

どのような種類の住所情報を参照していますか?

Webページからマイクロフォーマットを抽出して表示できるFireFoxプラグインOperatorTailsがいくつかあります。

于 2008-09-03T21:08:57.320 に答える
1

VB.NET での一般的な HTML スクリーン スクレイピングについては、HTML Agility Packを確認してください。正規表現を試みるよりもはるかに簡単です (たまたま正規表現の忍者でない限り!)

アドレスが一貫した形式であるため、回答で言及したページは簡単に自動化できます。

しかし、ユーザーが任意のページを参照できるようにするのは、はるかに困難な仕事です。データは、まったく任意の形式である可能性があります。すべてのテキストをダンプし、それらがどのように分割されているかを推測し、国や州の名前、電話番号などのビットを試して認識し、ユーザーが不足しているセクションを完了できるようにするインターフェイスで結果を表示し、ディバイダ、および見逃したビットまたは不要なビットを特定します。

単純なことではありませんが、検証済みのフォーム フィールドに単純にカット アンド ペーストするよりも大きな利点を提供するインターフェイスを作成することは、かなりの成果になると思います。

編集:あなたがやりたいことのかなりの部分をカバーするかもしれないこの他の質問に気付きました: 文字列から使用可能な番地、都市、州、郵便番号を解析します

于 2008-10-31T16:08:20.177 に答える
1

Aza Raskin は、彼のFirefox Proposal: A Better New Tab Screenで、選択されたテキストがアドレスであることを認識することについて話しました。まだコードはありませんが、将来これを行うためのコードが firefox にあるかもしれないので言及します。

または、アドレスを自分で選択する必要がありますが、 Ubiquity で map コマンドを使用して調べることもできます。

于 2008-09-03T21:43:15.383 に答える
1

ページの形式がわかっている場合 (たとえば、それらがすべて ashnha.com ページのようなものである場合)、これを行う VB.NET コードを書くのはかなり簡単です。

  1. System.Net.WebRequestを作成し、応答を文字列に読み取ります。
  2. 次に、 System.Text.RegularExpressions.Regex を作成し、それと取得した文字列の間で Matches のコレクションを反復処理します。一致ごとに、DataTable に新しい行を作成します。

難しいのは正規表現を書くことです。これはちょっとした黒魔術です。正規表現に関する多数のツール、書籍などについては、regexlib.comを参照してください。

HTML 形式が正規表現に対して十分に定義されていない場合は、おそらく、どのビットがアドレスであるかを識別するために、ある程度のユーザー介入に頼る必要があります...

于 2008-09-03T22:28:21.793 に答える