0

この Web サイトから最初の画像の URL を取得するスクリプトを作成しようとしています: http://www.slothradio.com/covers/?adv=&artist=pantera&album=vulgar+display+of+power

これが私のスクリプトです:

$content = file_get_contents($url);
$doc = new DOMDocument();
$doc->loadHTML($content);
$xpath = new DOMXpath($doc);

$elements = $xpath->query("*/div[@class='album0']/img");
echo '<pre>';print_r($elements);exit;

それを実行すると、出力されます

DOMNodeList Object
(
)

クエリを に変更しても$xpath->query("*/img")、何も得られません。私は何を間違っていますか?

4

2 に答える 2

0

$doc->loadHTMLFile($content);HTML コンテンツではなく FILE PATH を取り込みます ドキュメントを参照してください

http://php.net/manual/en/domdocument.loadhtmlfile.php

使用する

$doc = new DOMDocument();
$doc->loadHTMLFile($url);

出力要素への使用

var_dump(iterator_to_array($elements)); 
//Or
print_r(iterator_to_array($elements));

ありがとう

:)

于 2012-04-04T15:39:14.713 に答える
0

私は何を間違っていますか?

を使用していますがprint_rDOMNodeListその関数の出力は提供されません (内部クラスであるため)。たとえば、アイテムの数を出力することから始めることができます。最後に、ノード リストを繰り返し処理し、各ノードを独自に処理する必要があります。

printf("Found %d element(s).\n", $elements->length);
于 2012-04-04T15:30:59.460 に答える