Php 使用XPath从Icecast获取当前歌曲

Php 使用XPath从Icecast获取当前歌曲,php,html,xpath,Php,Html,Xpath,因此,我尝试使用XPath在PHP文件中获取“当前歌曲”作为回音。 我尝试回显文件\u get\u内容,它返回我试图从中获取内容的网页,但似乎无法使用XPath过滤网页内容。它应该只回应当前的歌曲 这就是我尝试过的: <?php libxml_use_internal_errors(false); $html = file_get_contents('http://185.40.20.83/radio/8000/'); $doc = new DOMDocument; $doc->lo

因此,我尝试使用XPath在PHP文件中获取“当前歌曲”作为回音。 我尝试回显文件\u get\u内容,它返回我试图从中获取内容的网页,但似乎无法使用XPath过滤网页内容。它应该只回应当前的歌曲

这就是我尝试过的:

<?php
libxml_use_internal_errors(false);
$html = file_get_contents('http://185.40.20.83/radio/8000/');
$doc = new DOMDocument;
$doc->loadHTML($html);
$xpath = new DOMXpath($doc);
$node = $xpath->query('/html/body/div/div[1]/div[2]/table/tbody/tr[10]/td[2]')->item(0);
echo $node->textContent;
?>
loadHTML($html);
$xpath=新的DOMXpath($doc);
$node=$xpath->query('/html/body/div/div[1]/div[2]/table/tbody/tr[10]/td[2]')->项(0);
echo$node->textContent;
?>

我已经尝试了一个多小时,我失去了希望,因为我不知道问题出在哪里…

尝试将您的
$node
更改为:

$node = $xpath->query('//table//tr[./td[text()="Current Song:"]]/td[2]')->item(0);

输出:

Chmst - Pump Up The Jam

显然,XPath处理输入的方式不同于XML到HTMLDOM。谢谢它起作用了
Chmst - Pump Up The Jam