获取最接近url php的标题描述文本的图像

时间:2012-10-17 10:52:06

标签: php xpath domxpath

我正在尝试从网址中获取最相关的图片。 我想获取最接近页面标题“文本”的图像。 或者以不同的方式。 我想根据它们与标题“文本”的距离给图像分数。 然后获取分数最高的图像。

标题'text'可以在标题元素

<h1>title text</h1>,<h2>title text<h2>,etc

或者 它可能与

的alt属性匹配
<img alt='title text'> tags.

或者 它也可以在任何其他元素中,如

<p> , <span> , <div> etc

例如:

让我们说页面的标题如下:

<title>White Gold Round Diamond Wedding Band: Jewelry: Amazon.com</title>

在页面正文中我们有类似的内容:

<h1>White Gold Round Diamond Wedding Band</h1>

最接近上述标签的元素可以说是在div中,如下所示:

<div class='abc'>
    <img src='efg' />
</div>

然后上面的图像应该得到最高分。

相反,如果img的alt属性与标题匹配,则该图像应获得最高分。

提前致谢。

1 个答案:

答案 0 :(得分:3)

我不认为这是一个很好的解决方案。 如果设置了og:image,您可以尝试获取XPath

另一种解决方案是使用150px X 150px获取所有图片,并仅获取具有指定尺寸的图片,例如:大于width/height且有限0.5比例,例如来自{{1}到2。如果有超过1个图像,您可以让用户使用简单的图像滑块选择其中一个,就像在Facebook的共享弹出窗口中一样。

此外,您可以使用类似Embed.LY API的内容,如果您想获得一些产品图片,它可以非常准确地运行。

如果您正在使用Amazon和/或Ebay优惠,那么您可以尝试Amazon's Product Advertising APIEbay's Finding API以获得最佳效果。您只需从给定的URL中提取商品ID,然后发送API请求以获取该商品的详细信息,包括不同大小的图片。

最后,最佳解决方案可能是组合每种方法并像一体化一样使用它们。