php网页抓取标题(PHP内置的get_meta_tags函数可以用于获取网页的标题(title))
优采云 发布时间: 2021-09-18 22:01php网页抓取标题(PHP内置的get_meta_tags函数可以用于获取网页的标题(title))
PHP内置的get_uMeta_uu标签功能可用于获取网页的标题、描述和关键字等元信息
使用方法如下:
$meta_array = get_meta_tags('https://www.bnxb.com');
var_dump($meta_array);
输出
array(4) {
["viewport"]=>
string(56) "width=device-width, initial-scale=1.0, maximum-scale=1.0"
["applicable-device"]=>
string(9) "pc,mobile"
["description"]=>
string(253) "笨牛网 - 笨牛小白成长之路(教程 资源 网站 前端 后端 程序 运维 IT OFFICE 站长),提供网站建设,服务器运维,源码,数据库,IT知识,办公软件WORD,excel,ppt,access,photoshop学习,各种免费空间,域名,VPS介绍等"
["keywords"]=>
string(213) "笨牛网,笨牛小白之家,教程,资源,网站,前端,后端,程序,运维,OFFICE,站长,服务器维护,电脑知识,OFFICE办公软件,站长源代码,免费资源,免费域名,免费服务器,免费VPS推荐"
}
默认情况下,get_u-meta_uu标记为UTF-8。如果遇到GBK和GB2312代码,则会出现乱码
例如,爬行是因为代码为GB2312:
$meta_array = get_meta_tags('http://www.qq.com');
var_dump($meta_array);
经营成果:
array (size=3)
'baidu-site-verification' => string 'cNitg6enc2' (length=10)
'keywords' => string '???,????,???,????,???,NBA,???,?????,???,QQ,Tencent' (length=56)
'description' => string '???????2003??????????????????????????????????????????????????????????????????????????????????????????????????????????????е?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????' (length=314)
这里有两种解决乱码的方法
方法一:增加表头代码,正确的代码格式如下:
header("content-type:text/html; charset=gb2312");
$meta_array = get_meta_tags('http://www.qq.com');
var_dump($meta_array);
方法2:使浏览器自适应的通用编码解决方案:
header("content-type:text/html; charset=xxx");
$meta_array = get_meta_tags('http://www.qq.com');
var_dump($meta_array);
注:charset=XXX意味着让浏览器自动适应正确的网页代码,以免导致显示乱码