【问题标题】:Extract Meta itemprop="price" content提取 Meta itemprop="price" 内容
【发布时间】:2014-06-14 22:32:54
【问题描述】:

给定的 URL 有代码:-

  <meta itemprop="price" content="12.00" />

我想将 12 提取到一个新变量中,我不知道从哪里开始,因为这里我们不能使用用于提取普通元标记的 Tags PHP 函数!

【问题讨论】:

    标签: php metadata meta


    【解决方案1】:

    为了获取所有元标记,您应该使用 XPath 来选择所有节点

    $xmlsource = 'http://www.example.com/';
    $d = new DOMDocument();
    $d->loadHTML($xmlsource);
    $xpath = new DOMXPath($d);
    //find all elements with itemprop attribute
    $nodes = $xpath->query('//*[@itemprop]');  
    foreach ($nodes as $node) { 
    
     }
    

    【讨论】:

      【解决方案2】:

      你也可以使用DOMDocument::getElementsByTagName:

      $string  = file_get_contents('http://www.example.com/');
      $dom = new DOMDocument();
      $dom->loadHTML($string);
      $dom->preserveWhiteSpace = false;
      //get all meta tags
      $el = $dom->getElementsByTagName('meta');
      
      echo'<pre>';
      print_r($el);
      echo'</pre>';
      
      foreach($el as $val){
          //get value of each content
          echo $val -> getAttribute('content').'<br>';
      }
      

      【讨论】:

        【解决方案3】:

        XPath 过滤器是 //meta[@itemprop='price']/@content

        如果您在 Google 表格中,您可以使用 importXML 公式,如下所示......

        =importxml("http://www.example.com/product-specific-url-here", "//meta[@itemprop='price']/@content")

        这就是你要找的吗?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-07-07
          • 1970-01-01
          • 2012-01-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-04-20
          • 1970-01-01
          相关资源
          最近更新 更多