我正在使用 PHP 的get_meta_tags()
函数来获取不同网页的元标记。我想知道获取<h1>
网页标签内容的最佳方法是什么。我应该使用file_get_contents()
,还是有更好的方法?
问问题
2018 次
4 回答
4
是的,我会使用:
$page = file_get_contents('http://example.com');
$matches = array();
preg_match( '#<h1>(.*?)</h1>#', $page, $matches );
你的信息应该在$matches
于 2012-08-02T03:15:30.940 回答
1
file_get_contents()
可以为您获取页面的内容。获得内容后,如何提取h1
标签取决于您。
您可以尝试一个简单的正则表达式来返回第一个h1
标签的内容:
$contents = file_get_contents($url);
preg_match_all("/<h1>(.*?)<\/h1>/", $contents, $matches);
$h1 = $matches[1];
但是,在处理 HTML 时,我更喜欢使用 DOM 解析器。PHP Simple HTML DOM Parser非常易于使用。就像是:
$contents = file_get_contents($url);
$html = str_get_html($contents);
$h1 = $html->find("h1")[0];
注意:我没有测试这些代码片段。只是一些样本可以帮助您入门。
于 2012-08-02T03:23:12.037 回答
0
尝试使用简单的 HTML DOM。
代码:
<?php
require_once('simple_html_dom.php');
$raw = '<h1>blah</h1>'; // Set the raw HTML of the webpage here
$html = str_get_html($raw);
$h1 = $html->find('h1', 0)->plaintext;
echo $h1;
?>
于 2012-08-02T03:15:43.863 回答