Xip*_*tec 7 php simple-html-dom
我正在使用PHP Simple HTML DOM Parser来抓取网店的一些数据(也运行XAMPP 1.7.2和PHP5.3.0),而且我遇到了<tbody>tag的问题.该表的结构是必要的(细节并不是那么重要):
<table>
<thead>
<!--text here-->
</thead>
<tbody>
<!--text here-->
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
现在,我正在尝试<tbody>使用代码进入该部分:
$element = $html->find('tbody',0)->innertext;
Run Code Online (Sandbox Code Playgroud)
它不会抛出任何错误,它只是在我试图回应时没有打印出来.我测试过的其他元素的代码,<thead>,<table>,甚至有点像<span class="price">,他们都做工精细(ofcourse,删除" 0"失败的代码).他们都给出了正确的部分.Outertext同上.但一切都失败了<tbody>.
现在,我已经浏览了Parser,但我不确定我是否能解决它.我注意到<thead>甚至没有提到,但它工作正常.耸
我想我可以尝试做儿童导航,但这似乎也有问题.我刚试过跑:
$el = $html->find('table',0);
$el2 = $el->children(2);
echo $el2->outertext;
Run Code Online (Sandbox Code Playgroud)
而且没有骰子.试图替换children用first_child和2 1,和仍然没有骰子.有趣的是,如果我尝试->find而不是children,它的效果非常好.
我非常有信心我可以找到一个解决方案,但这种行为似乎很奇怪,可以在这里发布.我好奇的心灵很高兴得到所有的帮助.
小智 29
在simple_html_dom.php文件中注释或删除第396行
// if ($m[1]==='tbody') continue;
Run Code Online (Sandbox Code Playgroud)
小智 1
确保您的tbody代码来自某些 javascript 执行。我在使用 span 标签时遇到了同样的问题。后来我发现,如果任何 html 代码通过 jquery/任何其他 javascript 执行进入页面,那么在这种情况下simple_html_dom就会失败。
| 归档时间: |
|
| 查看次数: |
6033 次 |
| 最近记录: |