1

すみません、変な質問を投稿してしまいました。今はちゃんと説明しています。

たとえば、次のようなWebページからデータをスクラップしようとしています: http://www.koolkart.com/nokia-lumia-800-p8251

「saholic」に近い表にリストされているデバイスの価格を取得しようとしています。「Rs. 17759/-」であり、xpath は次のとおりです。"//*[@id="price-chart"]/tbody/tr[1]/td[3]"

今、クロムでxpathを実行すると、スペース付きの価格が表示されます

"

                                Rs. 17759/-
                                "

さて、phpで実行すると

<?php
$xpath = '//*[@id="price-chart"]/tbody/tr[1]/td[3]';          
$html = new DOMDocument();
@$html->loadHTMLFile('http://www.koolkart.com/nokia-lumia-800-p8251');
$xml = simplexml_import_dom($html);   
if (!$xml) {
    echo 'Error while parsing the document';
    exit;
}
echo $xml;
$source_image = $xml->xpath($xpath);
print_r($source_image);
?>

エラーが発生します!

それで、それらの末尾のスペースを削除する方法や、その価格を取得する他の方法はありますか?

4

1 に答える 1

0

私はあなたが価格を望んでいると仮定します。

tbodyタグはブラウザーによって追加されますが、ソースの一部ではないため、ブラウザーとスクリプトで同じ結果は得られません。

次のような式を使用できます。

'//*[@id="price-chart"]/tr[1]/td[3]'
于 2012-12-11T16:09:58.153 に答える