中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

如何從UserAgent識(shí)別搜索引擎并判斷真假蜘蛛-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線(xiàn)動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買(mǎi)多久送多久,劃算不套路!

成都創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供七里河企業(yè)網(wǎng)站建設(shè),專(zhuān)注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、H5頁(yè)面制作、小程序制作等業(yè)務(wù)。10年已為七里河眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。

小編給大家分享一下如何從UserAgent識(shí)別搜索引擎并判斷真假蜘蛛,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

一般搜索引擎去爬取一個(gè)網(wǎng)站時(shí),首先是去讀取網(wǎng)站的robots.txt 文件,看看網(wǎng)站管理員有沒(méi)有在該文件設(shè)置禁止某些蜘蛛,或禁止訪(fǎng)問(wèn)

哪些路徑。然而一些流氓蜘蛛不會(huì)顧及robots.txt 文件,想爬哪就爬哪。這種情況管理員只能通過(guò)應(yīng)用程序去識(shí)別判斷,是否限制某些訪(fǎng)

問(wèn)。

識(shí)別搜索引擎

通過(guò)UserAgent 字符串來(lái)識(shí)別,下面例子是使用Go 來(lái)實(shí)現(xiàn)

簡(jiǎn)單的是通過(guò)正則來(lái)識(shí)別:

spiderReg = regexp.MustCompile(`(?i)bot|crawl|spider|slurp|sohu-search|lycos|robozilla|google|Baidu`)

上面的正則就能識(shí)別大多數(shù)搜索引擎,使用方法:

if spiderReg.MatchString(r.Header.Get("User-Agent")) {
    // 對(duì)搜索引擎作響應(yīng)
}

如果要想要從UserAgent 里分析出更多的信息,可借助一些庫(kù)來(lái)解析,如下面:

import "github.com/mssola/user_agent"

ua = user_agent.UserAgent{}
ua.Parse("Mozilla/5.0 (compatible; Googlebot/2.1;+http://www.google.com/bot.html)")

fmt.Printf("%v\n", ua.Bot())      // => true
name, version = ua.Browser()
fmt.Printf("%v\n", name)          // => Googlebot
fmt.Printf("%v\n", version)       // => 2.1

識(shí)別真假

UserAgent 字符串可以在 http 請(qǐng)求時(shí)設(shè)置,任何一個(gè)客戶(hù)端都可以偽造成一個(gè)搜索引擎去訪(fǎng)問(wèn)你的網(wǎng)站??梢酝ㄟ^(guò)下面兩個(gè)步驟去識(shí)別真正的搜索引擎。

在 *nix 系統(tǒng)下使用 host 命令,使用方法如下面兩個(gè)示例:

$ host 207.46.13.178
178.13.46.207.in-addr.arpa domain name pointer msnbot-207-46-13-178.search.msn.com.
$ host msnbot-207-46-13-178.search.msn.com
msnbot-207-46-13-178.search.msn.com has address 207.46.13.178
$ host 203.208.60.24
24.60.208.203.in-addr.arpa domain name pointer crawl-203-208-60-24.googlebot.com.
$ host crawl-203-208-60-24.googlebot.com
crawl-203-208-60-24.googlebot.com has address 203.208.60.24

解釋一下上面的過(guò)程,首先通過(guò)來(lái)訪(fǎng) IP 作DNS反向查詢(xún),得到相關(guān)域名,再把得到的域名再做一次查詢(xún),得到 IP,與原來(lái)的IP 相同才是比較靠譜的搜索引擎。

Go 語(yǔ)言里的 net 包可以實(shí)現(xiàn)這樣的查詢(xún):

names, err := net.LookupAddr(ip)
addrs, err := net.LookupHost(name)

通過(guò)這種方式建立一個(gè)IP白名單,就可以屏蔽掉一些來(lái)路不明的蜘蛛。

看完了這篇文章,相信你對(duì)如何從UserAgent識(shí)別搜索引擎并判斷真假蜘蛛有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!

新聞標(biāo)題:如何從UserAgent識(shí)別搜索引擎并判斷真假蜘蛛-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://www.rwnh.cn/article16/doeigg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)靜態(tài)網(wǎng)站、微信小程序、微信公眾號(hào)、網(wǎng)站導(dǎo)航、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開(kāi)發(fā)
土默特右旗| 肇州县| 廊坊市| 连江县| 聂荣县| 上林县| 清徐县| 双流县| 玛曲县| 乌鲁木齐市| 金溪县| 阿克苏市| 博兴县| 库尔勒市| 集安市| 昔阳县| 山东省| 彭州市| 慈溪市| 隆安县| 卢龙县| 唐山市| 鄂托克前旗| 奈曼旗| 宕昌县| 嘉定区| 石柱| 邻水| 曲松县| 大新县| 乃东县| 文化| 伊通| 工布江达县| 博客| 西乡县| 屏山县| 河北区| 西乌珠穆沁旗| 嘉兴市| 进贤县|