我需要帮助解决问题。我需要一个程序,给定一个站点,它可以找到并提取“主”图片,即代表该站点的图片。 (说它是最大 或第一 图片有时但不总是正确的)。
我应该如何处理这个问题?有没有图书馆可以帮助我解决这个问题? 谢谢!
最佳答案
选项 1
你可以结帐Goose .它做的事情类似于 Pocket 和 Readability 所做的,即尝试使用一组启发式方法从给定的网页中提取主要文章。它显然也可以从那篇文章中提取主要图像,但它有点碰运气,所以 60% 的时间它每次都有效。
它曾经是一个 Java 项目,但被重写为 Scala。
来自自述文件
Goose will try to extract the following information:
- Main text of an article
- Main image of article
- Any Youtube/Vimeo movies embedded in article
- Meta Description
- Meta tags
- Publish Date
在这里试试:http://jimplush.com/blog/goose
选项 2
您可以使用 Java 包装器(例如 GhostDriver )来运行 headless 浏览器,例如 PhantomJS .然后,获取网站并找到尺寸最大的 img
元素。 This GhostDriver test case展示了如何在 DOM 中查询元素并获取它的呈现大小。
选项 3
使用类似 jsoup 的库可以帮助您解析 HTML。然后从所有 img
标签的 src
属性中获取值。请求您为图像找到的每个 URL 并测量它们的大小。尺寸最大的可能是网站的主要图片。
关于java - 如何在网站中查找和提取 "main"图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18268386/