Я пытаюсь получить все изображения с этого URL-адреса http://www.homegate.ch/kaufen/105652197?3
. Я использую Xpaths в PHP. По какой-то причине я могу получить тело с помощью Xpath, но не с изображениями. Вот мой сценарий:PHP Xpath возвращает узлы для тела, а не для изображения
<?php
$url = "http://www.homegate.ch/kaufen/105652197?3";
$body = '//body';
$img = '//img';
$html = file_get_contents($url);
# Call htmlentities as the $url content is not well-formatted: http://stackoverflow.com/questions/1685277/warning-domdocumentloadhtml-htmlparseentityref-expecting-in-entity
$html = htmlentities($html);
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DomXPath($dom);
$query = $xpath->query($body);
if($query->length == 1)
echo $query->item(0)->nodeValue;
if($query->length < 1)
echo "Xpath for body is no good!";
$query = $xpath->query($img);
if($query->length == 1)
echo $query->item(0)->nodeValue;
if($query->length < 1)
echo "Xpath for image is no good!";
Запуск этого сценария возвращает:
1. <!DOCTYPE html>..
2. Xpath for image is no good!
Что происходит здесь не так? - Почему Xpath работает только на body
, а не на img
Что дает var_dump ($ query)? –
'object (DOMNodeList) # 3 (1) {[" length "] => int (0)}' – user1965074