2012-03-24 51 views
0

我希望任何人都可以幫助我。簡單的html DOM解析器和<span>

我有一個html代碼:

<div id="v4-95"><div id="v4-96" class="pview rs-pview"><table cellpadding="0" cellspacing="2" class="grid"><tr><td width="33%" class="gallery"><a name="item19c368bcd6"></a><table cellpadding="0" cellspacing="10" class="gallery"><tr><td class="picture camera" width="100%" height="140"><div class="image" style="width: 140px;"><a href="http://www.ebay.co.uk/itm/SAMSUNG-LTN156AT02-15-6-LAPTOP-SCREEN-NEW-/110652603606?pt=UK_Computing_LaptopAccess_RL&amp;hash=item19c368bcd6" class="gpvi" id="src110652603606" _sp="p4634.c0.m14.l1262" r="1"><img alt="Item image" title="Item image" src="http://thumbs3.ebaystatic.com/m/mvOLm6Tv8Lid54uveSlY80A/140.jpg" border="0"></a></div></td></tr><tr><td><div class="mi"></div></td></tr><tr><td class="details"><div class="ttl g-std"><a id="src110652603606" _sp="p4634.c0.m14.l1262" r="1" href="http://www.ebay.co.uk/itm/SAMSUNG-LTN156AT02-15-6-LAPTOP-SCREEN-NEW-/110652603606?pt=UK_Computing_LaptopAccess_RL&amp;hash=item19c368bcd6" target="_parent" title="SAMSUNG LTN156AT02 15.6&quot; LAPTOP SCREEN NEW">SAMSUNG LTN156AT02 15.6" LAPTOP SCREEN NEW</a><img src="http://q.ebaystatic.com/aw/pics/s.gif" width="16" alt="This seller accepts PayPal" height="16" class="ii iippl"></div><div><table cellpadding="0" cellspacing="0" class="fixed"><tr><td><img src="http://q.ebaystatic.com/aw/pics/bin_15x54.gif" alt="Buy It Now" title="Buy It Now"></td><td><span class="bin g-b">£41.50</span></td></tr> 

我可以用這個代碼retrive標題:

$html = file_get_html('http://stores.ebay.co.uk/LCD-Kings/15-6-/_i.html?_fsub=886314010&_sid=73271570&_trksid=p4634.c0.m322'); 
foreach($html->find('a') as $element) 
echo $element->title . '<br>'; 

但我不明白我怎麼能檢索£41,50之間的跨度和爲什麼它有一個類「bin gb」的空間...

謝謝fo r help ...

回答

1

它在類中有一個空格,因爲該元素有兩個類。一個叫bin,另一個叫g-b。我猜g-b是指英國,所以價格可能是類別bin的跨度。

您沒有提供所有的HTML,但有可能是,你可以搜索的外部因素(如:id爲product,然後,內一個div,找到與bin類跨度價)。

您應該查看DOM解析器的文檔,並查看它支持find()的參數。如果它支持類似#product span.bin(或類似的語法),那麼你可以選擇該類的span

+0

我更新HTML代碼,看看整體以前的帖子...我看到像你這樣的ID說.. – webalive 2012-03-24 10:50:00

+1

謝謝,試驗後,它的工作原理與此代碼: 的foreach($ HTML的「發現(」本。 ')as $ element) echo $ element-> plaintext。 '
'; – webalive 2012-03-24 13:13:03