【发布时间】:2012-08-18 08:35:04
【问题描述】:
我已经四处寻找,但一直找不到。我只是想使用通配符从 html 中选择元素。例如,对于我正在抓取的页面,此选择器在 Jquery 的控制台中完美运行:
$("tr[id^='informal_']")
换句话说,抓取所有 id 以“informal_”开头的行。我试过 xpath 但没有运气。 xpath 是 XML 独有的吗?无论如何,如果有人有任何解决方案,我将不胜感激。
编辑
我使用的xpath:
$doc = new DOMDocument($html);
$doc->strictErrorChecking = false;
$xpath = new DOMXPath($doc);
$table_rows = $xpath->query("//*tr[starts-with(@id, 'informal_')]");
解决方案 我决定选择:http://code.google.com/p/phpquery/
代码如下:
require('phpQuery/phpQuery.php');
$doc = phpQuery::newDocumentHTML($html);;
$table_rows = $doc->find("tbody tr[id^='informal_']");
【问题讨论】:
-
你能显示你使用的xpath吗?
标签: php dom web-scraping