9

Facebookの「共有」機能に似たものを自分のWebサイトに構築しようとしています。

URLを受け入れ、メタキーワードを取得し、タイトルや説明を適切に取得できるようになりましたが、ユーザーが共有したい「可能性の高い」写真を特定するための最善の方法については少し行き詰まっています。 。

現在、SimpleXMLElementを使用して、ページをトラバース可能なDOMに変換し、すべてのタグを検索して、それらを絶対URLに変換しています。その後、適切なサムネイルを見つける方法がわかりません。

それらをすべてダウンロードして、ファイルサイズで移動しますか?「ページの途中で遭遇した」などのヒューリスティックを使用しますか?

他の誰かが何か推奨事項、提案、またはヒントを持っていますか?

4

2 に答える 2

7

削ったブログ投稿から画像を取得するために、少し前に似たようなものを書きました。画像を選択するための私の基準は、ページ上のすべての画像のリストを取得し、「優先ポイント」を割り当てるという方針に沿ったものでした。

  • AdBlockerのリストから取得したブラックリストからホストされている画像を無視します
  • スタイルシートやIFRAMEからリンクされているような間接的な画像を無視する
  • 幅または高さが50ピクセル未満の画像は無視します
  • 複数回繰り返される画像を無視する
  • ホストのホワイトリスト(photobucket、imageshack.usなど)からホストされている画像に優先ポイントを割り当てます
  • ページ上の最大の3つの画像に優先ポイントを割り当てます
  • 同じホスト上の画像に優先ポイントを割り当てる
  • ALTタグが定義されている画像に優先ポイントを割り当てる
  • Pタグに表示される画像に優先ポイントを割り当てる

次に、最も優先度の高いポイントを選択します。それは確かに絶対確実でも過度に科学的でもありませんでしたが、それはそうでないよりもはるかに頻繁に何か有用なものを得ました。

于 2010-03-11T01:38:44.483 に答える
3

私はこれを直接経験したことがないので、特定のベストプラクティスがあるかどうかはわかりませんが、一般に、Webサイトの実装にばらつきがあるため、いくつかの要因を調べるヒューリスティックなアプローチが理にかなっていると思います。

画像のプロパティと、画像が配置される場所/方法のコンテキストの2つのアイテムセットを見ていきます。

画像のプロパティ:

  • 幅と高さが最小しきい値を満たしている
  • アスペクト比は妥当です(タイルが極端なアスペクト比を持っている可能性がある背景画像。これは、画像が適切でない可能性があることを示す良い指標となります)
  • 画像に複数の色が存在します(検出は困難ですが、さまざまな背景画像を回避できる場合があります)

画像コンテキスト:

  • 画像がページ上で繰り返されない(これにより、繰り返される可能性のあるアイコンやその他のデザイン要素の使用が回避されます)
  • ページのh1、h2などのタグの後に発生します。これは、ページの中央から来る画像についてのあなたのポイントに到達し、再びデザイン要素を避けます。
  • altタグがあります(これは一貫して使用されていないため、おそらく多くの有用な情報を提供しません)

前のアイテムに重みを割り当ててから、各画像がルールをどの程度満たしているかに従って、見つけた画像をランク付けします。

また、一部のページでは、CSS(またはFlashなど)を使用して画像を表示する場合があることに注意してください。これらは、画像の範囲外です(定義したアルゴリズムによる)。おそらく大したことではありませんが、考慮すべきことがあります。

于 2010-03-11T01:33:57.050 に答える