我有一个用DOMXpath抓取一个表格大的页面的问题。
布局非常难看,这意味着我试图从表格中的表格中获取内容。 使用Firebug FirePath我正在为表元素获取以下路径:
html/body/table/tbody/tr[3]/td/table[1]/tbody/tr[2]/td[1]/table[1]/tbody/tr[3]/td[4]
现在,经过无休止的实验,我发现,在一个独立的桌子上,我需要删除“tbody”标签才能使其正常工作。但是对于表格中的表格来说,这似乎不够。 所以我的问题是如何最好地从表格中的表格中获取内容?
我上传了我想在这里抓取的文件:1
答案 0 :(得分:1)
我遇到了同样的问题,因为你要删除一个复杂且格式不正确的html源码,我想在另一个表中的表中获取值..
我的方法是盯着我希望得到的一些功能系列这样的部分:
function parse_html() {//gets a specific part of the table i chose to extract the contents
$query = $xpath->query('//tr[@data-eventid]/@data-eventid'); //gets the table i want
$this->parse_table();
}
function parse_table() {//
$query = $xpath->query('//tr[@data-eventid="405412"]/td[@class="impact"]/span[@title]/@title');...etc//extracts the content of the table
$this->parseEvaluate();
}
function parseEvaluate(){
...verifying values if correct
}
只是提出这个想法..
答案 1 :(得分:0)
怎么样:
//*[contains(text(),"GRABME")]
我知道这可能不是你想要的,但你明白了。识别模式并使用该模式构建xpath。