【问题标题】:PHP Web Scrape with PHP Simple HTML DOM Parser使用 PHP Simple HTML DOM Parser 的 PHP Web Scrape
【发布时间】:2019-09-21 08:25:54
【问题描述】:

我正在尝试使用 PHP Simple HTML DOM Parser 获取数据字段。我可以拉取链接、图片等,但无法获取某个数据属性。

示例 HTML -

<div id="used">
    <div id="srpVehicle-1C3CCCEG2FN601809" class="vehicle" data-vin="1C3CCCEG2FN601809">
    <div id="srpVehicle-1C3CCCEG2FN601810" class="vehicle" data-vin="1f2CfCEG2FN266778">
</div>

我想获取网站上的所有“data-vin”字段。

这是我的尝试 -

$html = file_get_html($url);

foreach($html->find("div[data-vin]", 0) as $vin){
  echo $vin."<br>";
}

但是当我回显 $vin 时它会返回整个页面。如何访问该 data-vin 字段?

【问题讨论】:

  • the documentation我想你想用:$html-&gt;find("div[data-vin]", 0)
  • 我会使用 domdocument 和 xpath。
  • 谢谢,你说得对。当我回显 $vin 时,它会返回整个页面

标签: php html web-scraping scrape


【解决方案1】:
$html->find("data-vin", 0)

正在寻找标签命名 data-vin,而你真的想要标签带有属性 data-vin

foreach($html->find("[data-vin]") as $tag){
    echo $tag->getAttribute('data-vin')."<br>";
}

【讨论】:

  • 谢谢,但它给了我错误:未捕获的错误:在整数上调用成员函数 getAttribute()
  • @RyanD 我在原始代码中留下了一些不正确的东西。请参阅编辑。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-12
  • 2012-04-08
  • 2017-06-08
  • 1970-01-01
  • 2011-09-04
  • 1970-01-01
  • 2016-04-09
相关资源
最近更新 更多