2012-02-09 4 views
6

Evernote's Web Clipper pluginまたはAnnouncify pluginはどのようにページの関連記事/記事/コンテンツの一部を取得しますか?ここではEvernoteのプラグインからのスクリーンショットです:ウェブサイトの関連部分のみを取得する

enter image description here

あなたが他のレイアウトwisesとは全く異なっている訪問のウェブサイトに関係なく、これらはいつもあなたの記事を取得することができます/ポスト/コンテンツは、ページの一部。

各ウェブサイトは、さまざまなレイアウトを持っている、いくつかは、サイドバーを持っている、いくつかは、異なるタグをない、メイン/記事/コンテンツ部分のために、HTML5の他のいくつかの使用<article>または<section><h1> > <p>を使用し、いくつかの使用<h2> > <p>などは使用しませんまったく。したがって、ウェブサイトのレイアウトだけでなく、タグのさまざまな組み合わせがあります。

誰でも解決策を提案することができますメイン記事/記事/コンテンツはJavascriptまたはPHP経由でお願いします。

+0

これは賢いです... – Jivings

+0

おそらく、ページ上で最も大きな「div」やその他の要素を探しているのでしょうか? – Jivings

+0

@Jivings:Biggest divにはサイト全体が含まれるため、メイン/記事の部分を含む要素を見つけることができます:) – Dev555

答えて

7

あなたは、単純なDOM解析を行い、<div> sであり、より多くのテキスト含む<p> Sを検索することができます(テキスト!ないHTMLコードを!)。しかし、インテリジェントな方法に関係なく、コンテンツがどこにあるかを決めるには、DOMの解析から開始する必要があります。そのため、PHPライブラリを解析するDOMを見てみましょう。

とにかく、ここから起動することができます。

http://w-shadow.com/blog/2008/01/25/extracting-the-main-content-from-a-webpage/

はかなりよさそうだ、とあなた自身の何かを書きたい場合は技術的な説明を提供します。

+0

これは恐ろしい解決策です。しかしおそらく最高です。 – Jivings

+1

@Jivingsなぜ恐ろしいですか? –

+0

DOM解析が私を震えさせるので。しかしあなたのリンクは興味深いようです。 – Jivings

0

ほとんどのブログエンジンは、そのdivに 'content'というIDを与えます。あなたはちょうどあなたがのDOMDocument :: getElementByIdを( 'コンテンツ')を行うだろうPHPの$( '#コンテンツ')

  • を行うだろうJavaScriptで

  • 関連する問題