1

我正在开发一个 php 爬虫,我可以在页面中获取所有链接的 href。我不想在我的数据库中保存文件下载链接的 url,例如

http://www.example.com/folder1/thefile.exe

http://www.example.com/folder1/download.php?id=1

http://www.example.com/folder1/thefile.zip

http://www.example.com/folder1/thefile.extension

或任何其他扩展。

这是我的有效函数,我知道 is_file() 函数在这里没用。

protected function isValid($url)
{
    $isJavascript = strpos(strtolower($url), 'javascript:') !== false; // remove javascript links 
    $isEmail = strpos(strtolower($url), 'mailto:')!==false; // remove mailto links

    if($isEmail || $isJavascript)
        return false;


    if(is_file($url)){
        echo "is file<br>";
      return false;
    } else echo "is not file<br>";


    if (strpos($url, $this->_host) === false
        || $this->isSeen($url)
    ) {
        return false;
    }

    return true;
}

现在我的问题是:我如何检测导致文件下载的任何 url?

4

0 回答 0