未捕获的错误:调用未定义的函数get_file_html()

时间:2018-05-26 14:52:33

标签: php curl simple-html-dom

我正在尝试解析这个网页,当我在include "simple_html_dom.php";之后包含CURL部分代码时工作正常但是如果评论该部分并且只使用simple_html_dom它会给我错误说

未捕获错误:在filepath \ index.php中调用未定义函数get_file_html():18堆栈跟踪:文件路径中引发#0 {main} \ index.php

如果文件不在本地,我是否需要卷曲?

很抱歉,如果这是一个noob问题,我刚刚开始使用php。

<?php

    include "simple_html_dom.php";

    $html = new simple_html_dom();
    $html = get_file_html('https://in.tradingview.com/symbols/NSE-TCS/');

    foreach($html->find('a') as $element)
       echo $element->href . " -> " . $element->plaintext .'<br>'; 

?>

CURL

/*  $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://in.tradingview.com/symbols/NSE-TCS/");

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $response = curl_exec($ch);

    curl_close($ch);
    //echo $response;*/

P.S。我从here下载了simple_html_dom.php,文件在根目录中

1 个答案:

答案 0 :(得分:1)

您可以将str_get_html()与来自curl请求的响应一起使用,因此代码看起来像......

include "simple_html_dom.php";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://in.tradingview.com/symbols/NSE-TCS/");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);

$html = str_get_html($response);
foreach($html->find('a') as $element)   {
    echo $element->href . " -> " . $element->plaintext .'<br>';
}