6

次の構成の文を検索して、Web からステートメントを収集しようとしています。

[subject] [are/is] [rest of sentence].

そこで例えば「コンピュータは【文末】」で始まる文を全て検索して集めたいと思います。その結果、次のような結果になる可能性があります。

  • コンピューターは面倒です。
  • コンピュータは素晴らしいです。
  • コンピュータは高価です。
  • 等。

集めたいのは文頭からピリオドまで(できれば出現率順)です。

既存の検索エンジンでこれを行う方法はありますか、それともボット/スクレーパーを構築する必要がありますか?

4

4 に答える 4

2

具体的な数値はわかりませんが、Google Suggest APIを介して人気のある (しばしば面白い) 結果を得ることができます

例えば:

http://suggestqueries.google.com/complete/search?output=toolbar&hl=en&q=Computers%20are

..次のようなものを返します。

<toplevel>
<CompleteSuggestion>
  <suggestion data="computers are your future"/>
</CompleteSuggestion>
<CompleteSuggestion>
  <suggestion data="computers are racist"/>
</CompleteSuggestion>
<CompleteSuggestion>
  <suggestion data="computers are us"/>
</CompleteSuggestion>
<CompleteSuggestion>
  <suggestion data="computers are stupid"/>
</CompleteSuggestion>
<CompleteSuggestion>
  <suggestion data="computers are illegal in florida"/>
</CompleteSuggestion>
[...]
</toplevel>

Google は、結果を改善しようとする通常の魔法を実行することに注意してください。たとえば、スペルミスのある を検索しようとすると、次のCompuuter isように修正されます。Computer is

于 2013-08-29T13:56:16.350 に答える
2

興味のある名詞のリストから始めて、それぞれに関連する文を引き出す必要があります。

それはウェブからのものである必要がありますか?検索できる英語の編集物がいくつかあります: http://en.wikipedia.org/wiki/Text_corpus

不要なものを除外するために、いくつかの正規表現を記述する必要があります。

また、Google 検索 API を使用しcomputers are *て、データをフィルタリングする必要があるようなものを検索することもできます。

于 2013-09-03T18:18:01.553 に答える
1

Ruby を使用しても構わない場合は、ページをスパイダーできる spidr というライブラリがあります。また、自然言語処理が可能な、treat というライブラリもあります。

yubnubも見てみたい

于 2013-08-29T13:44:33.073 に答える
0

Common Crawlプロジェクトを使用して、大量の Web ページのコーパスにアクセスできます。AWS で実行する Hadoop MapReduce ジョブを作成し、関心のあるページを抽出します。詳細とチュートリアルは、彼らのサイトで入手できます。

于 2013-09-04T09:57:08.463 に答える