【问题标题】:Get text from an element of a web page with PHP使用 PHP 从网页元素中获取文本
【发布时间】:2021-03-25 23:34:32
【问题描述】:

我有这个错误:DOMDocument 类的对象无法转换为字符串

我正在尝试解析网页以获取 div 中的文本

$ch = curl_init($url);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);
$dom = new DOMDocument();
$dom->loadHTML($html);

$table = $dom->getElementById('mostra')> textContent; //DOMElement
echo $table;

这是html元素:

<div id="mostra">Hello<img src="file.png"></div>

我想打印你好

我该如何解决?

非常感谢,对不起我的英语

【问题讨论】:

  • 你似乎有一个错字:... )&gt; textContent; 应该是 ...)-&gt; textContent; - 否则,你的代码应该是 work

标签: php parsing dom html-parsing


【解决方案1】:
function string_between_two_string($str, $starting_word, $ending_word) {
    $subtring_start = strpos($str, $starting_word);
    $subtring_start += strlen($starting_word);
    $size = strpos($str, $ending_word, $subtring_start) - $subtring_start; 
    return substr($str, $subtring_start, $size);
}

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);

$table = string_between_two_string($html, '<div id="mostra">', '<img src="file.png"></div>');
echo $table;

尝试使用此功能在两个元素之间查找文本

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-31
    • 2017-06-22
    • 2021-11-14
    • 2017-07-29
    • 1970-01-01
    • 2016-10-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多