php教程之獲取網站ico文件地址
最近開發導航主題時,會獲取某網站的ico圖標及tdk(標題,關鍵詞,描述)等內容,這類其實都是存在接口的,但是難免會擔心失效,所以變自己寫了一個簡單的,基本上90%的都能獲取到吧,其余不能獲取到的也就是一些反爬蟲的站點吧。下面就會為大家分享一下實現過程。
一、URL驗證
第一步是去url鏈接驗證,不外乎就是是否是url,然后驗證url中是否包含有http(https)等;
如果沒有則添加,很簡單的。
二、獲取根目錄文件
大部分站點的ico圖標都是類似如下:
https://www.www.holdiches.com/favicon.ico
所以這里可以直接嘗試訪問該路徑,判斷是否存在,如不存在則進行下一步處理。
三、提取鏈接
preg_match('|href\s*=\s*[\"\']([^<>]*?)\.ico[\"\'\?]|i',$file,$a);
通過以上正則對頁面進行提取,提取包含ico鏈接,然后對鏈接進行組合。
這里會出現幾個情況,部分站點的寫法不同,所以需要優化
<link rel="shortcut icon" href="/xxxx/favicon.ico"/> <link rel="shortcut icon" href="./xxxx/favicon.ico"/> <link rel="shortcut icon" href="../xxxx/favicon.ico"/>
如上,這類寫法就需要對ico鏈接進行替換,然后再判斷是否存在ico文件,到此就是關于php獲取ico文件url的教程。
附:資源為獲取ico圖標鏈接php文件,只獲取,不進行保存,保存需要自行保存本地,保存其實是非常簡單的,主要是獲取鏈接。
版權聲明:本文來自網絡,不代表老魚網立場,老魚網僅為分享信息,不參與任何交易,也非中介,所有內容僅代表個人觀點,均不作直接、間接、法定、約定的保證,讀者相關風險自擔。
如有侵權,請聯系:wwwlaoyuwang#126.com(#=@)!我們會第一時間核實處理!
如有侵權,請聯系:wwwlaoyuwang#126.com(#=@)!我們會第一時間核實處理!