How to get a div via PHP?

前端 未结 3 1954
没有蜡笔的小新
没有蜡笔的小新 2021-02-06 17:14

I get a page using file_get_contents from a remote server, but I want to filter that page and get a DIV from it that has class \"text\" using PHP. I started with

相关标签:
3条回答
  • 2021-02-06 17:47

    you can use simple_html_dom like here simple_html_dom doc

    or use my code like here :

    include "simple_html_dom.php";
    $html = new simple_html_dom();
    $html->load_file('www.yoursite.com');
    $con_div = $html->find('div',0);//get value plaintext each html
    

    echo the $con_div in plaintext..

    $con_div->plaintext;
    

    it's mean you will find the first div in array ('div',0) and show it in plaintext.. i hope it help you :cheer

    0 讨论(0)
  • 2021-02-06 18:04

    Personally, I like Simple HTML Dom Parser.

    include "lib.simple_html_dom.php"
    
    $html = file_get_html('http://scrapeyoursite.com');
    $html->find('div.text')->plaintext;
    

    Pretty simple, huh? It accommodates selectors like jQuery :)

    0 讨论(0)
  • 2021-02-06 18:05

    Once you have loaded the document to a DOMDocument instance, you can use XPath queries on it -- which might be easier than going yourself through the DOM.

    For that, you can use the DOMXpath class.


    For example, you should be able to do something like this :

    $dom = new DOMDocument();
    $dom->loadHTML($html);
    
    $xpath = new DOMXPath($dom);
    $tags = $xpath->query('//div[@class="text"]');
    foreach ($tags as $tag) {
        var_dump($tag->textContent);
    }
    


    (Not tested, so you might need to adapt the XPath query a bit...)

    0 讨论(0)
提交回复
热议问题