Php 获取页面上最相关的图像
我正在收集网页上的所有图像。但是,因为可能有一些带有Php 获取页面上最相关的图像,php,image,Php,Image,我正在收集网页上的所有图像。但是,因为可能有一些带有.png的图标,它们也被视为图像 我是否可以只显示真实的图像,而不在页面上显示图标或图标 这是我的简单脚本 function get_logo($html,$url) { $url = rtrim($url, '/'); if (strpos($url,'wikipedia') !== false) return "http://upload.wikimedia.org/wikipedia/commons/5/
.png
的图标,它们也被视为图像
我是否可以只显示真实的图像,而不在页面上显示图标或图标
这是我的简单脚本
function get_logo($html,$url)
{
$url = rtrim($url, '/');
if (strpos($url,'wikipedia') !== false)
return "http://upload.wikimedia.org/wikipedia/commons/5/53/Wikipedia-logo-en-big.png";
else if(preg_match_all('/\bhttps?:\/\/\S+(?:png|jpg)\b/', $html, $matches))
{
return $matches;
}
else
{
preg_match_all("/<img src=\"(.*?)\"/", $html, $matches);
return $url.''.$matches[1][0];
}
}
您可以创建并声明两个限制,一个用于宽度,一个用于高度。这可能是一种确定图像是图标(例如64 x 64像素)还是更大的“真实”图像的方法。您对“真实”图像与图标的定义是什么?图像位置也很重要,如果它位于顶部(可能是徽标),如果位于底部,则不需要一些随机图像。同时尝试忽略页眉、页脚、侧边栏和广告元素。然后找到包含大量文本的主块,尝试拍摄第一张图像-这是您想要的图像。@PatrickQ:real image是作为内容的一部分出现在页面上的一般图像。图标属于favicon、视频图标(如)、分级图像等。我也给出了此类图像的示例列表,但您尚未提供要包含或排除的内容的真实定义。说“我想排除图标”不是一个定义。什么样的规格使某些东西成为你眼中的图标?该定义是否适用于您将要提取的所有URL?在您提出一些具体的规则来定义要包含/排除的内容之前,用于包含/排除的技术/功能/代码是不相关的。对该问题的公认答案没有使用
getimagesize()
array (size=1)
0 =>
array (size=16)
0 => string 'http://cdn.sstatic.net/stackoverflow/img/apple-touch-icon@2.png' (length=63)
1 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
2 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
3 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
4 => string 'http://i.stack.imgur.com/uE37r.png' (length=34)
5 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
6 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
7 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
8 => string 'http://i.stack.imgur.com/dmHl0.png' (length=34)
9 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
10 => string 'http://i.stack.imgur.com/dmHl0.png' (length=34)
11 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)
12 => string 'http://i.stack.imgur.com/uE37r.png' (length=34)
13 => string 'http://i.stack.imgur.com/NG6TX.png' (length=34)
14 => string 'http://i.stack.imgur.com/BfCOt.png' (length=34)
15 => string 'http://i.stack.imgur.com/tKsDb.png' (length=34)