如何从html标签中删除看不见的样式元素

问题描述 投票:0回答:1

我正在抓取一个网站,但我在某一项上遇到困难。

$coprp = split_string($coprp, "<td id=\"p\" class=\"datatable-item\">",AFTER,EXCL);
$coprp = split_string($coprp, "td id=\"nch\"", BEFORE, EXCL);
$coprp = strip_tags($coprp);
$coprp = trim($coprp);
$coprp= str_split($coprp,100);
$commd[2] = $coprp[0];

目标线是:

td id="p" class="datatable-item" style="background-color: rgb(255, 255, 255);">3.7624</td

问题是我可以获取 3.7624 并显示它,但我无法将其放入数字数组中,因为它附加了在常规 html 中看不到的样式元素。

有没有一种简单直接的方法可以使用 PHP 删除这条看不见的行?

php html nan hidden
1个回答
0
投票

如果我理解正确的话,你的标签应该是:

<td id="p" class="datatable-item" style="background-color: rgb(255, 255, 255);">3.7624</td>

在 PHP 中,要从 td 标签获取数据,可以使用 DOMDocument

这是一个工作代码:

<?php
$html='<td id="p" class="datatable-item" style="background-color: rgb(255, 255, 255);">3.7624</td>';
$dom = new DOMDocument();
$dom->loadHtml($html);
$x = new DOMXpath($dom);
foreach($x->query('//td') as $td){

    echo $td->textContent;
}
© www.soinside.com 2019 - 2024. All rights reserved.