使用简单的html dom解析器从动态URL获取内容

时间:2016-03-05 15:55:43

标签: php html

我在php初学者级别,我想知道,是否可以从动态网址获取内容而不是网页。

此example.com页面包含动态内容。我想找到这些href并转到他们自己的页面并获取其内容。我的意思是,我不想要example.com的内容,我想找到" hrefs"使用" example.com"并转到每个" example.com/dynamic-urls"页面并获取其内容。

这是" example.com" (在这里找到网址)

 <html>
   <ul class="topic-list">
    <li>
        <a href="/sample-url">text1 </a>
    </li>
     <li>
        <a href="/another-url">text2 </a>
    </li>
     <li>
        <a href="/other-url">text3 </a>
    </li>
   </ul>
</html>

这是&#34; example.com/sample-url" (转到每个网址并获取其内容)

<html>
    <ul>
     <li>
      <div class="content">
        <h2>Sample Header</h2>
        <p>Lorem ipsum dolor sit <b>amet</b></p>
      </div>
    </li>
    <li>
      <div class="content">
        <h2>Sample Header2</h2>
        <p>Lorem ipsum dolor sit <b>amet</b></p>
      </div>
    </li>
   </ul>
</html>

这是我正在尝试的PHP代码:

<?php include_once('simplehtmldom_1_5/simple_html_dom.php');

    $html = file_get_html('https://example.com');

    foreach($html->find('.topic-list a') as $e) 

    $urls = $e->href;

    foreach($urls as $url) {

        $url2 = "https://example.com{$url}";

        $html2 = file_get_html($url2);

        $contents = $html2->find('ul li');

        foreach($contents as $content) {
            echo $content->find('.content')->plaintext;
        }

    }

    // clean up memory
    $html->clear();
    unset($html);

?>

我收到此错误:&#34;警告:为foreach()提供的参数无效....&#34;

0 个答案:

没有答案