如何使用PHP在特定节点上解析具有Itemprop属性的HTML页面?

时间:2019-07-02 18:14:35

标签: php html dom

我正在尝试制造宜家产品刮板。几个月前,他们对某些网站进行了改版(首先在欧洲进行了改版),现在,在带有Meta标签的所有Itemprop DIV下都输入了产品详细信息,这些标签都具有相同的“名称”名称。

这里是一个例子: https://www.ikea.com/fr/fr/p/staell-armoire-a-chaussures-3-casiers-blanc-50178091/

<div itemscope itemtype="http://schema.org/Product"
  class="product-pip js-product-pip"
  data-pip-version="2"
  data-product-id="50178091">
  <meta itemprop="name" content="Armoire à chaussures 3 casiers STÄLL blanc"/>
  <div itemscope itemprop="brand" itemtype="http://schema.org/Organization">
    <meta itemprop="name" content="IKEA"/>
  </div>
  <meta itemprop="description" content="Vous permet de ranger efficacement vos chaussures tout en libérant de l&#x27;espace au sol. Chaque compartiment possède des rangées doubles qui peuvent contenir davantage de chaussures. Dans ce rangement vos chaussures bénéficent d&#x27;air et d&#x27;espace et gardent ainsi plus longtemps leur aspect neuf. Comme le meuble dispose de pieds uniquement à l&#x27;avant, il repose parfaitement contre le mur au-dessus de la plinthe. "/>  <meta itemprop="productID" content="501.780.91"/>
  <meta itemprop="image" content="https://www.ikea.com/PIAimages/0710720_PE727741_S5.JPG"/>
  <meta itemprop="url" content="https://www.ikea.com/fr/fr/p/staell-armoire-a-chaussures-3-casiers-blanc-50178091/"/>
  <div class="product-pip__top-container flex center-horizontal">

我试图获得具有以下内容的itemprop节点;没有成功,因为许多元标记在不同节点下具有相同的“名称”名称,但没有成功。

 $dom = new DOMDocument();
        $dom->loadHTML($html);
        $dox = new DOMXPath($dom);
        $prop = $dox->query("//div[@itemprop='name']");

任何帮助都可以访问此特定Itemscope DIV下的元itemprop name =“ name”。

谢谢大家!

0 个答案:

没有答案