我正在寫一個小刮板腳本,它將找到具有特定類名的圖像URL。我知道我的cURL和DOMDocument運行正常,甚至DomXPath真的(據我所知,沒有錯誤),但我正在努力解決如何獲取xpath查詢結果的URL。DomXPath與DOMDocument得到<img>類URL
到目前爲止我的代碼:
$dom = new DOMDocument();
@$dom->loadHTML($x);
$xpath = new DomXpath($dom);
$div = $xpath->query('//*[@class="productImage"]');
var_dump($div);
echo $div->item(0);
如果我的var_dump($ x)將頁面輸出中沒有問題。所以CURL工作正常。但我不知道如何獲取$ div中包含的數據。我正在試圖找到一個類似'productImage'的圖像,如下所示:
<img src="/uploads/5W/yP/5WyPP4l7Z-jmZRzu_MJ6zg/1077-d.jpg" border="1" alt="Album" class="productImage">
我想要圖像標記的來源。
有什麼建議嗎?
哦,天哪,謝謝。是否有列表列出了xpath查詢結果的所有對象函數?因爲我找不到它:S – Chud37
如果您瀏覽文檔(http://www.php.net/manual/en/book.dom.php),您會看到xpath查詢返回一個DomNodeList。然後,您可以閱讀DomNodeList具有的合適的方法和方法(它每個只有一個)。當您可以訪問每個節點時,您可以在DomElement obj上閱讀以及如何訪問所有魔法。 –
如果您只希望單個節點匹配,您可以將其轉換爲Xpath並直接獲取標量值:'$ img = $ xpath-> evaluate('string(// * [@ class =「productImage」]/@ src)');' – ThW