【发布时间】:2014-10-12 13:47:15
【问题描述】:
我正在解析一个 HTML 文档,我需要一个 div 的类名。我知道类名的一部分(永远不会改变),但我需要完整的类名。
这是我使用的代码:
$doc = new DOMDocument;
$doc->loadHTMLFile('http://some_website.com');
$xpath = new DOMXPath($doc);
$classname_of_the_div=$xpath->query('//div[@class="part_of_the_class_name_that_never_changes"]');
当我 var_dump() $classname_of_the_div 和 $classname_of_the_div->item(0) 时,结果是:
object(DOMNodeList)#3 (1) { ["length"]=> int(0) }
NULL
我知道$classname_of_the_div=$xpath->evaluate('string(//div[@class="part_of_the_class_name_that_never_changes"])'); 为我提供了 div 的内容,但我如何获得完整的类名?
P.S.:类名的一部分与类名的其余部分用空格隔开,所以它不是真正的类的一部分。 div 只有几个类。
【问题讨论】:
-
说你只知道类名的一部分,你的意思是你只知道这个特定
div的class属性值的一部分吗? -
我的意思是 div 有几个类名,例如- 例如,我想通过“class2”选择它并接收包括“class1 class2 class3”在内的完整类字符串"
标签: xpath web-scraping html-parsing domdocument classname