PHP抓取没有扩展的远程映像


PHP scrape remote images that do not have extensions

我开发了一个图像抓取器,它将从远程站点抓取特定的图像,并在粘贴到文本字段时显示它们。逻辑包括查找以.jpg、jpeg、png等结尾的图像。

我遇到了一个问题,很多网站都会通过javascript生成图像,或者没有将图像扩展作为显示图像的一部分。等示例站点

www.express.com和www.underarmour.com都有这个问题,还有更多问题。

我可以使用什么功能从设置的URL中查找图像,然后相应地显示没有文件扩展名的图像?

再次感谢。

除非url来自<img src="...">,否则无法判断您将从特定url获得什么。http://example.com/index.html实际上很可能是一个提供zip文件的PHP脚本。

在你真正点击url并检查标题+下载的数据之前,不可能可靠地告诉你url会给你什么。

我认为,您有两个选项:

  1. 生成一些试探法,URL是否可以是图像(比如在URL中找到零件/images/

  2. 加载每个URL并检查返回的数据是否为图像(例如使用getimagesize()

第二个版本更为通用,但在带宽和资源方面都相当繁重。