PHP:简单的HTML DOM解析器 - 如何获取具有特定标记名称的元素?

时间:2014-01-29 14:23:11

标签: php web-scraping simple-html-dom

在PHP中,我使用的是Simple HTML DOM Parser类。

我有一个HTML文件,其中包含多个和不同的标记。

在这个HTML中有一个这样的元素:

<a name="10418"><b>&nbsp;Hospitalist (Family Practitioner)</b></a>

所以我想找到 name =“10418”的 元素

我试过这个没有运气,因为我只想得到那个字符串。

  $html_object = str_get_html($url);
  $html_object=$html_object->find('a');
  foreach ($html_object as $o) {
            $a= $o->find("b");
            echo $a[0];
 }

2 个答案:

答案 0 :(得分:3)

尝试:

$anchor = $html_object->find('a[name=10418]', 0);
echo $anchor->plaintext;

Working DEMO

答案 1 :(得分:0)

尝试另一个名为Tag Parse的库。它简单而有效。

$dom = new TagParse\TagDomRoot($html);
$a = $dom->find('a[name="10418"]');

我认为它比simple_html_dom更快,成本更低。