【发布时间】:2014-06-14 22:32:54
【问题描述】:
给定的 URL 有代码:-
<meta itemprop="price" content="12.00" />
我想将 12 提取到一个新变量中,我不知道从哪里开始,因为这里我们不能使用用于提取普通元标记的 Tags PHP 函数!
【问题讨论】:
给定的 URL 有代码:-
<meta itemprop="price" content="12.00" />
我想将 12 提取到一个新变量中,我不知道从哪里开始,因为这里我们不能使用用于提取普通元标记的 Tags PHP 函数!
【问题讨论】:
为了获取所有元标记,您应该使用 XPath 来选择所有节点
$xmlsource = 'http://www.example.com/';
$d = new DOMDocument();
$d->loadHTML($xmlsource);
$xpath = new DOMXPath($d);
//find all elements with itemprop attribute
$nodes = $xpath->query('//*[@itemprop]');
foreach ($nodes as $node) {
}
【讨论】:
你也可以使用DOMDocument::getElementsByTagName:
$string = file_get_contents('http://www.example.com/');
$dom = new DOMDocument();
$dom->loadHTML($string);
$dom->preserveWhiteSpace = false;
//get all meta tags
$el = $dom->getElementsByTagName('meta');
echo'<pre>';
print_r($el);
echo'</pre>';
foreach($el as $val){
//get value of each content
echo $val -> getAttribute('content').'<br>';
}
【讨论】:
XPath 过滤器是 //meta[@itemprop='price']/@content
如果您在 Google 表格中,您可以使用 importXML 公式,如下所示......
=importxml("http://www.example.com/product-specific-url-here", "//meta[@itemprop='price']/@content")
这就是你要找的吗?
【讨论】: