使用 Simple HTML DOM 从网站抓取数据视图值

Scrape data-view value from website using Simple HTML DOM

我可以配置/更改 PHP,但不够熟练,无法从头开始编写 - 想知道是否有人可以帮助我吗?

基本上我想从网站上抓取少量数据,格式为:

<div class="PDPVariantOption" data-value="XYZ" data-variant="ClothingSize">

我只想提取 XYZ 位

$html->load($result["body"]);

    $rows = $html->find("div.PDPVariantOption");
    foreach ($rows as $row)
    {
        echo "\t" . $row . "\n";
    }

这是我正在使用的代码(与 http://barebonescms.com/documentation/ultimate_web_scraper_toolkit/ 一起使用)但这提取了 div 标签内的所有内容 - 我已经尝试了使用 getAttribute 的各种选项和类似的 get "data-value" 值(恐怕纯属我的猜测!)但运气不好 - 谁能帮忙?

非常感谢

乔伊

好的,这是我的完整代码:

$dom = new DOMDocument();
$html = '<div class="PDPVariantOption" data-value="XYZ" data-variant="ClothingSize">
<div class="PDPVariantOption" data-value="BHB" data-variant="ClothingSize">
<div class="differentName">
<div class="PDPVariantOption" data-value="567" data-variant="ClothingSize">
<div class="PDPVariantOption" data-value="123" data-variant="ClothingSize">
<div class="PDPVariantOption" data-value="rty" data-variant="ClothingSize">';

$dom->loadHTML($html);

$finder = new DomXPath($dom);
$result = $finder->query("//*[contains(@class, 'PDPVariantOption')]");

for ($i; $i < $result->length; $i++) {
    $row = $result->item($i)->getAttribute('data-value');
    echo $row . "\n";
}