我正在使用PHP和简单的HTML DOM Parser尝试从网站上获取歌词。歌词以“歌词”类的形式存放在div中。这是我用来尝试抓取div并显示它的代码。目前它只返回“数组”到我的网页上。当我jsonify数组时,我可以看到数组是空的。
<?php
include('simple_html_dom.php');
$data = file_get_contents("https://example.com/songlyrics");
$html = str_get_html($data);
$lyr = $html->find('div.lyrics');
echo $lyr;
?>
我知道Simple HTML Dom Parser正确包含在内,当我通过对代码进行一些小的更改来回显$ html时,我显示完整的网页没有问题,但是我似乎无法回应这个div。我的代码有问题吗?为什么$ lyr返回一个数组?
答案 0 :(得分:1)
您的代码没有任何问题。
为什么$ lyr返回一个数组?
这是因为一个类被认为是多次使用。如果你var_dump($lyr)
,你应该看到所有带有该类名的div元素。
您可以echo $lyr[0]
或$html->find('div.lyrics',0)
选择特定的div元素。