如何在Symfony DomCrawler中获取xpath到过滤元素?

如何在Symfony DomCrawler中获取xpath到过滤元素?,symfony,Symfony,我想获取页面上所有h2标题的xpath。我正在使用symfonydomcrawler来完成它,通过它我创建了以下解决方法 $h2s = $crawler->filter('h2'); $h2s->each(function($header) { $path = []; foreach($header->parents() as $parent) { $path[] = $p

我想获取页面上所有h2标题的xpath。我正在使用symfonydomcrawler来完成它,通过它我创建了以下解决方法

$h2s = $crawler->filter('h2');
$h2s->each(function($header)
{
            $path = [];

            foreach($header->parents() as $parent)
            {
                $path[] = $parent->tagName;
            }

            $path = '//' . join("/", array_reverse($path));
});
无论如何,它并不完美。生成的xpath不是唯一的。一些div有必要的类、id等。如何为每个dom元素或一些其他唯一属性(如hash)生成xpath?