2012-02-01 4 views
3

可能な重複のdivの内容を取得します。
How to implement a web scraper in PHP?
How to parse and process HTML with PHP?URLから

を私はページをクロールして、特定のdivの内容を取得する必要があります。私は私の2つの主要なオプションとしてPHPとJavaScriptを持っています。どのようにそれを行うことができますか?あなたが使用している場合

$('#cool_div').text(); // will return text version of contents... 
$('#cool_div').html(); // will return HTML version of contents... 

+3

、正規表現を使用します! – TJHeuvel

+1

あなたはおそらくperlと[WWW-Mechanize](http://search.cpan.org/dist/WWW-Mechanize/)を考えましたか? – cctan

答えて

2

これはかなり基本的な方法は、PHPそれを行うことであり、それはプレーンテキストの内容を返します。しかし、あなたの特定の必要性のための正規表現を修正することを検討するかもしれません。

<?php 
    $link = file_get_contents("http://www.domain.com"); 
    $file = strip_tags($link, "<div>"); 
    preg_match_all("/<div/>(?:[^<]*)<\/div>/is", $file, $content); 
    print_r($content); 
?> 
1

具体的にjQueryを使って、あなたは次のようにdivを持っている場合:

<div id="cool_div">Some content here</div> 

あなたは、このようなdivの内容を取得するためのjQueryを使用することができますPHPでページのコンテンツを生成すると、内容が適切に処理され、画面に戻って表示される前でも操作できるようになります。お役に立てれば! PHPを使用して

0

、あなたがDOMDocumentクラスとgetElementsを試すことができます()機能

2

あなたがここに文書化さhttp://simplehtmldom.sourceforge.net/manual.htm としてSimpleDomParserを使用することができ、それはしかし、PHP5の+が必要ですが、良いところは、あなただけのjQueryのようなセレクタでHTMLページにタグを見つけることができます。

3

URLのコンテンツを取得するには多くの方法があります。

まず方法:

http://simplehtmldom.sourceforge.net/

Simple HTML DOM Parser 

第2の方法:

<?php 

    $contents = file_get_contents("http://www.url.com"); 
    $contents = strip_tags($contents, "<div>"); 
    preg_match_all("/<div/>(?:[^<]*)<\/div>/is", $contents, $file_contents); 

?> 

第3の方法は:

私が知っている
`You can use jquery like Selectors :` 

http://api.jquery.com/category/selectors/