私がやっていることは、TweetボタンやFacebook Share/Likeボタンと基本的に同じことです。 1つのデータの関連タイトル。私が考えることができる最も良い例は、あなたが多くの記事を含むウェブサイトのフロントページにいて、Facebook Likeボタンをクリックしたときです。それから、ポストの適切な情報が「Like」ボタンに(最も近い)相対的に表示されます。一部のサイトにはOpen Graphタグがありますが、一部のサイトではまだ機能していません。リモートでページをスクラブし、XPathで画像に最も関連性の高いタイトルまたは説明を取得
これはリモートで行われるため、私はターゲットとするデータを制御するだけです。この場合、データは画像である。ページの<title>
だけを取り出すのではなく、逆に各画像の開始点からdomをたどり、最も近い「タイトル」を見つけることを探しています。問題は、すべてのタイトルが画像の前に出現するわけではないということです。しかし、この場合のタイトルの後に画像が出現する可能性はかなり高いようです。それがほぼすべてのサイトでうまく動作するようにすることが私の希望です。
思考:
- は、画像の「コンテナ」を検索し、テキストの最初のブロックを使用します。
- 特定のクラス(「説明」、「タイトル」)または要素(h1、h2、h3、h4)を含む要素のテキストブロックを検索します。
タイトルのバックアップ:抽出画像:ちょうど<title>
- 使用してグラフを開くタグ は
- METAタグ
概要を使用してそれは問題ではない、それはそれらのための関連するタイトルを取得する方法です。
質問:それぞれの画像に関連するタイトルをどうやって取得しますか?おそらくDomDocumentまたはXPathを使用していますか?
、あなたはPHPでそれをこすりした後、もし小さなJava WebサーバーへのREST呼び出しを介してそれを渡すことができます.JSOUPを使用すると、これらの要素と属性すべてに簡単にアクセスできます。 JSOUPはjQuery for Javaと似ており、同じ構文を使用します。私はそれがあなたの問題を数秒で遠ざけるようにするためにPHPで利用できることを望みます! – jmort253
イメージを直接扱うものはわかりませんが、ページからのコンテンツの抽出を扱うライブラリがいくつかあります。しかし、あなたはいくつかのアイデアや指示を得るか、それらを使うことができるかもしれません。ここに一つです:http://code.google.com/p/boilerpipe/wiki/Components –
あなたの考えをありがとう。私は自分のイメージをどうやって取得するのではなく、それぞれのイメージに関連するタイトルや説明を得ることの背後にある "論理"をもっとターゲットにして質問を更新しました。 – stwhite