Html 从网页中提取*相关*图像
我有几个推特支持的新闻聚合网站。我一直计划添加我在twitter上找到的文章中的图片 如果我下载页面并使用Html 从网页中提取*相关*图像,html,parsing,image-extraction,Html,Parsing,Image Extraction,我有几个推特支持的新闻聚合网站。我一直计划添加我在twitter上找到的文章中的图片 如果我下载页面并使用标签提取图像,我会得到一堆图像;并非所有这些都与本文相关。例如,捕捉按钮、图标、广告等的图像。如何提取文章附带的图像?我知道有一个解决方案——Facebook链接共享器做得很好 密顿 重复:我猜Facebook为其支持的各种网站提供了一个链接提取器。类似于id=“content”->img(第1个) 我猜我错了。似乎Facebook使用来定义要使用的图像(og:image)和元数据。我想出了
标签提取图像,我会得到一堆图像;并非所有这些都与本文相关。例如,捕捉按钮、图标、广告等的图像。如何提取文章附带的图像?我知道有一个解决方案——Facebook链接共享器做得很好
密顿
重复:我猜Facebook为其支持的各种网站提供了一个链接提取器。类似于id=“content”->img(第1个)
我猜我错了。似乎Facebook使用来定义要使用的图像(og:image)和元数据。我想出了一个解决方案,有点老套,但对我来说是可行的。下面是我如何得到缩略图
附言:我认为这是一个很好的答案。会给那些回答更优雅的人带来荣誉。从页面下载所有图片, 黑名单所有来自广告服务器的图像。 然后找到一些启发性的方法,让你得到正确的图像 我想是这样的:
- 最大分辨率+=5个像素
- 最大文件大小+=10分
- Jpeg+=2分
(这需要一些试探法)已经很久了。但这下一次可能会有所帮助 您可以使用这个API 它的使用非常简单,结果是我们所需要的最好的 使用API的示例:
<?php
$url = "http://timesofindia.indiatimes.com/business/india-business/Raghuram-Rajan-not-fit-to-be-RBI-Governor-Subramanian-Swamy/articleshow/52236298.cms";
$result = file_get_contents('https://api.urlmeta.org/?url='.$url);
$array = json_decode($result,1);
print_r($array['meta']['image']);
?>
这就是你需要的结果。好吧,OGP是Facebook正在推动的东西,以便他们能够准确地提取元数据。不幸的是,很多网站不遵循这个标准。这是经典的方法,谢谢你把它放在这里。我有点犹豫是否要走这条路,因为我不确定这将需要多长时间。正如您所说,经过一些调整后,它可能会工作得很好。我在其他地方还发现了几个因素:1]图像的路径。2] 指定宽度和高度的图片durlmeta.org非常酷。适用于几乎所有的电子商务产品页面。