Ben XPATH ile bir HTML belgesi ayrıştırma ve ben tüm iç html etiketleri tutmak istiyorum.
Söz html birçok liste unsurları ile bir sırasız liste.
<ul id="adPoint1"><li>Business</li><li>Contract</li></ul>
Ben şu PHP kodu kullanarak belgeyi ayrıştırma am
$dom = new DOMDocument();
@$dom->loadHTML($output);
$this->xpath = new DOMXPath($dom);
$testDom = $this->xpath->evaluate("//ul[@id='adPoint1']");
$test = $testDom->item(0)->nodeValue;
echo htmlentities($test);
Nedense çıkış daima ondan ihmal html etiketleri vardır. Ben XPATH bu şekilde kullanılmak üzere tasarlanmıştır, ancak bu çevrede yine orada değildi çünkü bu olduğunu varsayalım?
Ben zaten bir sorun olmadan sayfasında (tek a href elementler) diğer alanlarını ayrıştırmak için kullanmak gibi ben gerçekten XPath kullanarak devam etmek istiyorum.
EDIT: Ben UL alt öğeleri yineleme tarafından veri almak için daha iyi bir yol olduğunu biliyoruz. Orada ben de (javascript blok) ayrıştırmak istediğiniz sayfanın daha karmaşık bir parçasıdır, ama ben örneği anlamak için daha kolay bir sağlamak için çalışıyorum.
Ben istiyorum kod gerçek bloğu
<script language="javascript">document.write(rot_decode('<u7>Pbagnpg Qrgnvyf</u7><qy vq="pbagnpgQrgnvyf"><qg>Cu:</qg><qq>(58) 0078 8455</qq></qy>'));</script>
Bu tüm kapatma etiketleri atlar ama açılış etiketlerini tutar sorunu var. Ben XPATH yerine sadece bir dize olarak tedavi daha iç unsurları ayrıştırmak çalışıyor çünkü tahmin ediyorum.
Ben deneyin ve komut dosyası öğesini seçerseniz
$testDom = $this->xpath->evaluate("//div[@id='businessDetails']/script");
$test = $testDom->item(0)->nodeValue;
echo htmlentities($test);
benim çıktı tüm kapatma etiketleri eksik görebilirsiniz, hangi olacak.
document.write(rot_decode('<u7>Pbagnpg Qrgnvyf<qy vq="pbagnpgQrgnvyf"><qg>Cu:<qq>(58) 0078 8455'));