0

我在用 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

4

2 回答 2

1

我遇到了和你一样的问题,我想在另一个表中获取一个表中的值。

我采用了这样的方法来关注我想要获得的部分功能:

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
}

只是给出想法..

于 2012-12-28T02:37:51.690 回答
0

怎么样:

//*[contains(text(),"GRABME")]

我知道这可能不是你想要的,但你明白了。识别一个模式并使用该模式来构建 xpath。

于 2012-12-28T02:17:51.530 回答