2016-09-13 7 views
0

<span>要素から外部のウェブサイトにコンテンツを取得して表示しようとしていますが、表示されません。外部のウェブサイトのクラスからのテキストを表示する

Iからコンテンツを取得していますウェブサイトへのリンクはここ

https://www.roblox.com/catalog/119916949/Midnight-Blue-Sparkle-Time-Fedoraある<span>要素です:

enter image description here

<?php 
$doc = new DOMDocument; 

// We don't want to bother with white spaces 
$doc->preserveWhiteSpace = false; 

// Most HTML Developers are chimps and produce invalid markup... 
$doc->strictErrorChecking = false; 
$doc->recover = true; 

$doc->loadHTMLFile("https://www.roblox.com/catalog/119916949/Midnight-Blue-Sparkle-Time-Fedora"); 

$xpath = new DOMXPath($doc); 

$query2 = "//span[@class='text-robux']"; 

$entries2 = $xpath->query($query2); 

$price2 = $entries2->item(0)->textContent; 

echo $price2; 
?> 
+0

あなた 'loadHTMLFile'方法は、あなたの質問に入れているために、異なるURLがあります。

それはJSONはそうあなたが簡単なjson_decodeを行うことができます平均価格を得るために、です。どちらですか? –

+0

これはどこに失敗しているのか教えていただけますか?外部ファイルを正しくロードしていますか?これはxpathの問題ですか? – WillardSolutions

+0

@ᵈˑᵈˑ申し訳ありません、それは小さなタイプミスです –

答えて

0

チャートはJavaScriptで構築されています。 loadHTMLFileはHTMLのみを読み込みます。ブラウザのdevtool設定でjavascriptを無効にするか、curlでデータを取得することで、実際にロードされているコンテンツを確認できます。

データ自体はAJAXによってロードされます。https://www.roblox.com/asset/119916949/sales-dataからです。

<?php 
$data = json_decode(
    file_get_contents("https://www.roblox.com/asset/119916949/sales-data") 
); 
echo $data->data->AveragePrice; 
+0

それは大変ありがとうございます:)あなたが私に尋ねる気にならないなら、そのURLをどうやって見つけましたか? –

+0

[tcpdump](http://www.tcpdump.org/tcpdump_man.html)でも、他のスニファを使用することができます。私は静的なコード分析からでもURLを得ることができると信じていますが、私はあまりにも怠惰です。 –

関連する問題