gpt4 book ai didi

php - PHP 简单 HTML DOM 解析器中的故障

转载 作者:可可西里 更新时间:2023-11-01 12:40:46 25 4
gpt4 key购买 nike

我正在使用 PHP Simple HTML DOM Parser 来抓取网上商店的一些数据(也使用 PHP5.3.0 运行 XAMPP 1.7.2),我遇到了 <tbody> 的问题。标签。表的结构本质上是(细节并不是那么重要):

<table>
<thead>
<!--text here-->
</thead>
<tbody>
<!--text here-->
</tbody>
</table>

现在,我正试图到达 <tbody>使用代码部分:

$element = $html->find('tbody',0)->innertext;

它不会抛出任何错误,当我尝试回显它时它只是不打印任何内容。我已经在其他元素上测试了代码,<thead> , <table> ,甚至像 <span class="price"> 这样的东西并且它们都工作正常(当然,删除“,0”会使代码失败)。他们都给出了正确的部分。外文同上。但这一切都在 <tbody> 上失败了.

现在,我已经浏览了解析器,但我不确定自己是否能弄明白。我注意到 <thead>甚至没有提到,但它工作正常。 耸肩

我想我可以尝试做 child 导航,但这似乎也有问题。我刚试过运行:

$el = $html->find('table',0);
$el2 = $el->children(2);
echo $el2->outertext;

没有骰子。尝试更换 childrenfirst_child和 2 与 1,仍然没有骰子。有趣的是,如果我尝试 ->find而不是 children , 它完美地工作。

我非常有信心我可以找到解决整个问题的方法,但这种行为似乎很奇怪,不能张贴在这里。我好奇的头脑很高兴能得到所有帮助。

最佳答案

在 simple_html_dom.php 文件中注释或删除行 #396

// if ($m[1]==='tbody') continue;

关于php - <tbody> PHP 简单 HTML DOM 解析器中的故障,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2340952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com