首頁 > php框架 > ThinkPHP > ThinkPHP6記錄蜘蛛爬取日誌的方法

ThinkPHP6記錄蜘蛛爬取日誌的方法

藏色散人
發布: 2021-12-17 11:33:23
轉載
2477 人瀏覽過

下面thinkphp框架教學欄位將介紹ThinkPHP 6是怎麼記錄百度等蜘蛛爬取日誌,希望對需要的朋友有幫助!

thinkphp6記錄百度蜘蛛日誌:

在控制器的父類別如IndexBase寫入以下程式碼,所有前端控制器繼承這個控制器

  public function initialize()
    {
        parent::initialize(); // TODO: Change the autogenerated stub
        if ($this->Config['web_status'] == 0) {  // 判断是否关闭网站
            die('网站已经关闭');
        }
        $this->baiduLog();
    }
    protected function baiduLog()
    {
        $useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
        $url = $this->request->controller() . "/" . $this->request->action();
        $param = input("param.","","htmlspecialchars");
        $url = (string) url($url,$param);
        $ip = get_real_ip();
        $title = "";
        if (strpos($useragent, 'googlebot') !== false){
            $title =  'Google';
        } elseif (strpos($useragent, 'baiduspider') !== false){
            $title =  'Baidu';
        } elseif (strpos($useragent, 'msnbot') !== false){
            $title =  'Bing';
        } elseif (strpos($useragent, 'slurp') !== false){
            $title =  'Yahoo';
        } elseif (strpos($useragent, 'sosospider') !== false){
            $title =  'Soso';
        } elseif (strpos($useragent, 'sogou spider') !== false){
            $title =  'Sogou';
        } elseif (strpos($useragent, 'yodaobot') !== false){
            $title =  'Yodao';
        } elseif (strpos($useragent, 'googlebot') !== false){
            $title =  'Google';
        } elseif (strpos($useragent, 'baiduspider') !== false){
            $title =  'Baidu';
        } else {
//            $title = $useragent; // 不怕数据大的话可以取消注释,记录所有访问日志
        }
        if (!empty($title)) {
            BaiduLog::create(["title"=>$title,"href"=>$url,"ip"=>$ip]);
        }
    }
登入後複製

以上就是thinkphp6記錄百度蜘蛛爬行日誌的方法,

get_real_ip()

是取得客戶真實IP的自訂函數。

推薦:《最新的10個thinkphp影片教學

以上是ThinkPHP6記錄蜘蛛爬取日誌的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:phpfv.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板