2011-12-20 12 views
6


コンテンツページの連絡先情報をウェブサイト(数千件)から取得しようとしています。私はあなたのような専門家に頭を傷つける前に尋ねたがっていました。私が必要とするのは、アドレス、電子メールID、電話番号、連絡先情報(利用可能な場合)だけです。検索文字列アルゴリズム

あなたはすでに問題を理解していると思います。はい、それはフォーマットです...ウェブサイトが従う標準フォーマットがないので、私が必要とする正確な情報をピンポイントするのは本当に難しいです。いくつかのウェブサイトはフラッシュコンタクトのページで設計されており、他のいくつかのウェブサイトでは連絡先情報をカスタムフォントのイメージタイプとして設計しています。

とヒント/アイデア/提案はほとんどが歓迎されている...

ありがとうございました....

+3

あなたはこの情報で何をするつもりなのか分かりますか?スパマーを助けていると思わない人は、あなたを助ける可能性が高くなります。 –

+0

私はスパマーではありません:-)私は本当にあなたの関心を賞賛しています...私はビジネスと顧客の両方を助ける多くのフィルタリングオプションを備えたビジネスウィキのようなウェブサイトを開発する予定です – Krishna

+0

IRをやりたいLuceneを見て、それは本当に強力です – JohnJohnGa

答えて

10

ご想像のとおり、これがあり、ノーで簡単な仕事を意味します。

  1. のようなLucene/SolrSphinxインデックスにページを反転インデックスシステムを使用してください:ここではこれをアプローチする一つの方法です。独自のクローラ/スパイダーを作成する必要があります。 Apache Nutchや他のクローラーは、スパイダリングを提供します。コンテンツがかなり静的である場合は、システムにローカルにダウンロードしてください。

  2. コンテンツがインデックスに登録されたら、 //電話番号のかっこのようなブール値クエリを作成して、電子メールアドレス、電話番号などを問い合わせることができます。コンテンツ:@ AND(内容: .COM OR Contents:.NET)OR内容: "(" OR "内容:") "重要:上記のコードは、文字通り取られるべきではありません。 Lucene Regex Query &スパンクエリーを使用すると、洗練されたクエリを作成することができます。

  3. 最後に結果ページに、(a)は(b)のスニペットに、興味のある分野を抽出するために 正規表現を実行して、クエリ用語の周り スニペット(複数可)を取得するには、結果のハイライトを実行し、 。

  4. 北米の住所データセットをお持ちの場合は、複数パスを使用して、i)Bing Mapsのようなマッピングプロバイダ、または住所を確認するGoogleマップと照合することができます。私が知る限り、USPSなどは有効な住所検索を有料で行い、米国の郵便番号とカナダの郵便番号を検証します。私はここには、単一の最善の解決策は存在しない、言ったように、または、ⅱ)あなたが始める必要がある電子メールアドレスなど....

のリバースDNSルックアップを......、あなたは意志反復し、あなたが望む正確さのレベルに到達するために複数のアプローチを試す必要があります。

これが役に立ちます。

+0

また、www.searchblox.comで取る、それはボックスの外にクロールウェブサイトなどを提供し、Luceneの頂上に構築されています。 – Mikos

+0

私は、このアプローチがサイトから特別なイベントやタイミングを引き出すのにも同じであることを願っています。例えば、... event:nerd dinner;時間:2012年7月5日@ 7時。 – Krishna

+0

さて、正規表現可能なものはすべて引き抜くことができます。 – Mikos

3

Conditional Random Fieldsは、これらのようなタスクに正確に使用されており、かなり成功しています。 CRF++またはStanford Named Entity Recognizerを使用できます。明示的なコードを書く必要なく、コマンドラインから両方を呼び出すことができます。

要するに、これらのアルゴリズムを学習するには、Webページから名前、電子メールIDなどのいくつかの例を与えて、まずこれらのアルゴリズムを訓練する必要があります。これらのアルゴリズムが(あなたが与えた例のために)スマートになったら、あなたのデータでそれらを実行し、あなたが得るものを見ることができます。

ウィキペディアのページを見て怖がらないでください。パッケージには多くの例があり、数時間で起動して実行する必要があります。

1

@Mikosが正しいとすれば、間違いなく複数のアプローチが必要です。考慮するもう1つのツールはWeb-Harvestです。これはWebデータを収穫するためのツールであり、Webサイトを収集し、興味のあるデータを抽出することができます。これはすべてXML設定ファイルを使用して行います。このソフトウェアには、GUIとコマンドラインインタフェースもあります。

XSLT、XQuery、Regular Expressionsなどのテキスト/ xml操作のテクニックを使用して、独自のプラグインを構築することもできます。しかし、主にHTML/XMLベースのウェブサイトに焦点を当てています。