3 回答

TA貢獻1827條經(jīng)驗 獲得超9個贊
如果我正確理解您要尋找的內(nèi)容,這應(yīng)該有效:
$rating = $xp->query('//span[contains(@class,"ui_bubble_rating")]/@class'); echo explode(" bubble_",$rating[0]->textContent)[1];
輸出:
45

TA貢獻1829條經(jīng)驗 獲得超7個贊
你的@class正在尋找直接匹配的class="ui_bubble_rating"
您可能必須使用該contains()
函數(shù)在字符串中進行搜索
//span[contains(@class,'ui_bubble_rating')]

TA貢獻1719條經(jīng)驗 獲得超6個贊
我推薦以下 XPath,如:
//span[contains(concat("?",?normalize-space(@class),?"?"),?"?ui_bubble_rating?")]
然后,您可以使用正則表達(dá)式檢索要查找的號碼,該正則表達(dá)式查找以 開頭的一系列數(shù)字bubble_
:
$ratingsElements = $xp->query('//span[contains(concat(" ", normalize-space(@class), " "), " ui_bubble_rating ")]');
if ($ratingsElements->length > 0) {
? $firstRatingElement = $ratingsElements->item(0);
? if (preg_match('/(?<=\bbubble_)\d+/', $firstRatingElement->getAttribute('class'), $matches)) {
? ? $datas[$activity]['rating'] = $matches[0];? // 45
? }
}
- 3 回答
- 0 關(guān)注
- 166 瀏覽
添加回答
舉報