公司網站主要是靠百度流量來賺錢,主要是做移民簽證,品牌名稱:移民內參。有運營部同時負責產品運營,每周匯報收錄情況、收錄率、收錄文章鏈接等情況。閑暇之余寫了一個小功能,就是統計每個編輯本周發文鏈接,并查詢百度收錄情況計算收錄率。最后生成圖標,進行數據匯總。
一、實現代碼
/** * 百度PC 收錄檢測 * @return thinkresponseJson * @author 申霖 * @time 2019/7/22 0022 下午 7:37 */ public function index() { $dataUrl = input('post.url'); if ($dataUrl) { $baseUrl = 'http://www.baidu.com/s?wd='; $data = explode("n", $dataUrl); $res = []; foreach ($data as $k => $v) { $res[$k]['url'] = $v; $res[$k]['status'] = $this->checkBaiDu($baseUrl . $v); } return json(['code' => 200, 'message' => 'success', 'data' => $res]); } else { return view('seo/index'); } } /** * CURL 請求 * @param $url * @return string * @author 申霖 * @time 2019/7/22 0022 下午 7:36 */ public function checkBaiDu($url) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $rs = curl_exec($curl); curl_close($curl); if (!strpos($rs, '沒有找到')) { //沒有找到說明已被百度收錄 return '已收錄'; } else { return '未收錄'; } }
二、原理
通過長時間的seo經驗,發現在百度收錄網址鏈接時會出現收錄鏈接的索引,當無收錄時會出現提交網址字樣,我們利用此規則進行判斷。其他搜索引擎同理。