获取title
通过正则:
<?php
$url = 'http://192.168.3.114:8080/#/';
function getTagContent($str, $tag = 'title'){
preg_match('/<'.$tag.'.*>\s*(.*)\s*<\/'.$tag.'>/',$str, $res);
return $res;
}
var_dump(getTagContent(file_get_contents($url)));
执行结果:
PS C:\Users\root\Desktop> php .\index.php
array(2) {
[0]=>
string(81) "<title>SeekStask工作台,聚合搜索,用户至上的极客工作台</title>"
[1]=>
string(66) "SeekStask工作台,聚合搜索,用户至上的极客工作台"
}
xpath方法
<?php
$url = 'http://192.168.3.114:8080/#/';
$res = file_get_contents($url);
$dom = new DOMDocument();
$dom->loadHTML($res);
$dom->normalize();
$xpath = new DOMXPath($dom);
$data = $xpath->query('/html/head/title');
var_dump($data->item(0)->nodeValue);
执行结果:
PS C:\Users\root\Desktop> php .\index.php
string(66) "SeekStask工作台,聚合搜索,用户至上的极客工作台"
推荐xpath方法,通过它可以获取页面任意hmtl节点的内容。
获取viewport、description、keyword
php内部函数get_meta_tags可以获取网页的viewport、description、keyword等属性:
<?php
$url = 'http://192.168.3.114:8080/#/';
$res = get_meta_tags($url);
var_dump($res);
执行结果:
PS C:\Users\root\Desktop> php .\index.php
array(5) {
["viewport"]=>
string(37) "width=device-width, initial-scale=1.0"
["robots"]=>
string(23) "max-image-preview:large"
["keywords"]=>
string(12) "XPath 语法"
["description"]=>
string(356) "XPath 语法 XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。 XML 实例文档 我们将在下面的例子中使用这个 XML 文档。 实例 [mycode3 type='xml'] Harry Potter 29.99 Learning XML 39.95 [/mycode3] 选取节点 .."
["apple-mobile-web-app-title"]=>
string(12) "菜鸟教程"
}