我正在抓取像Facebook一样的网址。对于该页面中的所有图像,我可以使用PHP获取完整图像属性
$src = $tag->getAttribute('src');
如果外部网站将全网页路径放到他们的图像上,它可以正常工作。但有时他们只使用相对路径,并返回一个破碎的图像。
由于我有完整的网址,有没有办法检查$ src是否包含http://
或https
?
如果没有的话,我可以做
$src = $link . '/' . $src;
对于那些相对图像。我试过了,它们显示。但是,如果他们已经拥有了它,那么它们将不会显示为包含双重网址的路径。
我会倾向于只检查'=== 0' – Phil
@Phil:感谢您的提示 - 我只是改变了一秒之前:D – oezi
完美。谢谢。还有一个问题。我使用if(strpos($ src,'http://')=== 0 || strpos($ src,'https://')=== 0){ $ data [$ index] [' src'] = $ src; } else { $ data [$ index] ['src'] = $ link。 '/'。 $ SRC; }现在有时他们会在相对路径中放入一个'/'。那么如何避免在新的$ src中使用双斜线? – lionel28