中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

如何抓取域名完整WHOIS信息

2021-03-07    分類: 網站建設

域名注冊信息(whois),即域名所有人信息,登記著域名歸屬人信息。既然是信息,就有他的價值所在。域名注冊信息對很有些人來說非常重要,比如玩域名的米農們,還有一些公司的銷售們,他們通過獲取域名的注冊信息來聯系到域名的所有人,可以和他們洽談收購域名事宜?亦或者問問你注冊了域名要不要找我們做個網站?哈~反正由于騷擾量太大,所以現在很多人注冊域名都不留真實的聯系方式了。因為域名注冊信息這塊,注冊商是不做信息有效性審核的,隨便你填,只要格式正確就可以了。

但我不關心他的信息真實性,既然有人要這信息,我們就要想辦法爬啊!網上有很多查詢whois信息的軟件,但都不太適合我們的軟件調用和數據分析。所以我們最好還是自己直接抓取比較方便。

首先我們要了解域名注冊信息的存儲方式,我個人的理解是,全求有各大域名whois根服務器(有點像DNS根服務器)例如com的whois根服務器就是:whois.verisign-grs.com 這個服務器上存儲這域名的基本信息,包括創建時間,注冊時間,到期時間等等,比如我們查詢下今日頭條的域名toutiao.com的域名信息,具體信息如下圖

每個后綴的域名的根whois服務器是固定的,但這里的信息太少,不是我們想要的。那哪里才能查到我們想要的具體信息呢,上圖中,大家注意到沒,其中有條信息叫whois Server,指向了域名注冊商的whois服務器:whois.ename.com(易名中國),這個服務器存儲著域名更詳細的信息,其中就包括了我們想要的域名注冊人,聯系方式,郵箱等數據。

到這里,我們的任務完成了一半了!知道了信息的獲取途徑,下面我們就用程序的方法去獲取吧!

百度下whois協議,我們知道了whois協議通信是用的服務器43端口。這樣我們利用C#(亦或其他程序)中的SOCKET類去和服務器進行通信,協議方式就是連上43端口后,發送域名的ASCII編碼,以 (回車換行符)結束。成功的話服務器就會返回對應域名的信息,C#的通信代碼如下:

///

/// 查詢域名的 whois 信息

///

/// 要查詢的域名

/// whois 服務器地址

/// whois 服務器端口

///

/// 執行成功: 返回詳細的whois信息

/// 執行失敗:返回相就的異常或是錯誤信息

///

public static string Tcpwhois(string domain, string server, int port)

{

//domain = FunctionServices.getDomain(domain);

// 連接域名 whois 查詢服務器

TcpClient tcp = new TcpClient();

tcp.SendTimeout = 10;

//return string

string returnstr = "String Error";

try

{

tcp.Connect(server, port);

}

catch (SocketException)

{

returnstr = "查詢錯誤:連接 whois 服務器[" + server + "]失敗";

return returnstr;

}

// 向域名 whois 查詢服務器發送查詢的域名

try

{

//構造發送的字符串

domain += " ";

Byte[] DomainBytes = System.Text.Encoding.ASCII.GetBytes(domain.ToCharArray());

// 將域名發送到域名 whois 查詢服務器

Stream whoisStream = tcp.GetStream();

whoisStream.Write(DomainBytes, 0, domain.Length);

//返回流

StreamReader whoisStreamReader = new StreamReader(whoisStream, System.Text.Encoding.UTF8);

StringBuilder whoisInfo = new StringBuilder();

string whoisLine = null;

while (null != (whoisLine = whoisStreamReader.ReadLine()))

{

whoisInfo.Append(whoisLine + " ");

}

returnstr = whoisInfo.ToString();

}

catch (Exception)

{

returnstr = "查詢錯誤:網絡無響應,或者是您的域名輸入有誤";

}

finally

{

tcp.Close();

}

return returnstr;

}

我們就用toutiao.com舉例,通過這個代碼,我們可以先連接到com域名的根whois服務器:whois.verisign-grs.com 來獲取基本信息,然后對信息分析,提取想要的信息,如到期時間等。同時我們要提取關鍵的whois SERVER的信息,獲取到結果:whois.ename.com,同樣的方式,我們再連一次這個whois服務器,發送域名,得到域名具體的注冊信息。至此,我們就獲取到了一個完整的域名注冊信息了。

獲取域名注冊信息需要注意的以下幾點:

  1. 每個根服務器返回的信息格式有的時候并不一樣,這個就要靠我們人工新分析了。但同個服務器返回的信息格式是一樣的。所以針對不同的服務器返回,我們要區別對待。

  2. 域名未注冊時,查詢的信息返回是未找到,每個根服務器返回的也不一樣。有的是“does not exist”,有的是“Not found”,也有的是“No match for”,這個也挺讓人難受的。對于這樣的問題,我們只有針對不同的服務器,去做不同的判斷。主要做一些主流域名.com,.net,.cn的判斷基本就差不多了。

  3. 大多數域名服務器的請求頻率是有限制的。所以這里并不推薦多線程大批量獲取域名信息,為了穩定,還是單線程設置個延時,慢慢的抓吧。

這里提供一下幾個主流域名的whois根服務器供大家測試,測試方式是用Telnet 軟件去連接whois服務器的43端口,連接上之后就可以輸入域名,然后回車,就可以得到域名注冊信息了。

域名后綴 whois服務器
.com whois.verisign-grs.net
.net whois.verisign-grs.net
.cn whois.cnnic.net.cn"
.org whois.pir.org
.top whois.nic.top
.cc whois.nic.cc
.gov whois.internic.net
也許大家會問我,為什么不去站長直接這類網站獲取WOHIS信息呢?他們不是提供WEB查詢接口查詢么?要知道,起始他們也是最終到whois服務器去抓取的信息,他們只是緩存下來給大家查而已。我不想過于依賴別人,所以我們還是直接去whois服務器爬去實時的域名注冊

信息吧。

當前文章:如何抓取域名完整WHOIS信息
轉載注明:http://www.2m8n56k.cn/news5/104705.html

成都網站建設公司_創新互聯,為您提供響應式網站網站營銷搜索引擎優化建站公司定制網站用戶體驗

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站托管運營
主站蜘蛛池模板: 婷婷的久久五月综合先锋影音 | 99九九精品视频 | www国产 | 波多野结衣3女同在线观看 波多野结衣aⅴ在线 | 久久精品国产99久久99久久久 | 欧美videos娇小 | 欧美一级α片毛片免费观看 | 高清国产露脸捆绑01经典 | 色婷婷色综合激情国产日韩 | 国产特黄一级一片免费 | 成人羞羞视频国产 | 午夜性激福利免费观看 | 亚洲欧美日韩在线精品一区二区 | 久久久免费 | 欧美日韩性视频一区二区三区 | 欧美黑人性xxx猛交 欧美很黄视频在线观看 | 高清国产露脸捆绑01经典 | 国产精品亚洲综合 | 亚洲激情欧美 | 国产精品成人久久久久 | 久久在线免费观看 | 69xx欧美| 久久久久久日本一区99 | 亚洲国产成人久久笫一页 | 国产一级爱c片免费播放 | 国产激情久久久久影 | 嫩草影院成人 | 成人网18免费网站在线 | 精品日韩在线视频一区二区三区 | 日韩一级欧美一级毛片在 | 久久精品一区二区免费看 | 手机看片福利永久 | 日韩特级黄色片 | 日本二区免费一片黄2019 | 美国一级毛片∞ | 久久久久久日本一区99 | 久久精品视频免费在线观看 | 成人综合影院 | 久久国产美女免费观看精品 | 男女乱配视频免费观看 | 欧美一级毛片香蕉网 |