首页 > 解决方案 > 无法使用 PHP Simple Html DOM 获取 html 属性

问题描述

我正在尝试从 eBay 列表中获取“已售”信息 - https://www.ebay.co.uk/itm/Box-With-Tail-Pipe-Rear-Back-Silencer-Fits-Citroen-C2-C3 -I-C3-Pluriel-GCN499/254292997729?hash=item3b350b3661:g:clEAAOSwnhldLB4J截图如下: 在此处输入图像描述

如您所见,我想在屏幕右上角获得 ,1 sold" 文本。我正在使用类 ,,vi-txt-underline" 来获取它,但是它不起作用。有谁知道如何使用其他属性或不同的东西来做到这一点?这是代码:

            $sold = $html->find(".vi-text-underline", 0);

            if($sold != null){
                $item['sold'] = $sold->find("a", 0)->plaintext;
            }else{
                $item['sold'] = '';



   ["tag"]=>
      string(4) "text"
      ["attr"]=>
      array(0) {
      }
      ["children"]=>
      array(0) {
      }
      ["nodes"]=>
      array(0) {
      }
      ["parent"]=>
      *RECURSION*
      ["_"]=>
      array(1) {
        [4]=>
        string(6) "1 sold"

以上是调试$sold变量的一部分。

我正在使用数组 $item[] 因为我还在这部分代码之前搜索更多信息。

标签: php

解决方案


  1. 获取页面内容

    $url = " https://www.ebay.co.uk/itm/Box-With-Tail-Pipe-Rear-Back-Silencer-Fits-Citroen-C2-C3-I-C3-Pluriel-GCN499/254292997729?哈希=item3b350b3661:g:clEAAOSwnhldLB4J ";

    $content = file_get_contents($url);

  2. 找到你想要的

    echo strpos($content,'1 已售出');


推荐阅读