• webqwe-资源分享和开发经验
AD
AD

Home / 开发 / golang 请求api获取whois信息

golang 请求api获取whois信息

2023-06-13 16:41:31
745 阅读

仅供参考,调用的whois.263.tw

//获取域名whois
func GetDomainInfoHtml(domain string) (string, error) {
	req := httplib.Get("https://whois.263.tw/"+domain).SetTimeout(20*time.Second, 20*time.Second).SetProxy(func(*http.Request) (*url.URL, error) { return url.Parse("http://127.0.0.1:10809") })
	htmlStr, err := req.String()
	return htmlStr, err
}
htmlStr, err := GetDomainInfoHtml(v.Host)
				if err != nil {
					fmt.Println("请求失败", err.Error())
					
				}
				if strings.Contains(htmlStr, "No matching record.") {
					fmt.Println("api未支持此域名查询")
					
				}

				if strings.Contains(htmlStr, "No match for") {
					fmt.Println("可注册")
					
				}

				if strings.Contains(htmlStr, "Domain Status") {
					doc, err := goquery.NewDocumentFromReader(bytes.NewBufferString(htmlStr))
					if err != nil {
						fmt.Println("创建goquery失败", err.Error())
					} else {
						whoisStr := doc.Find("pre").Text()
						// fmt.Println(whoisStr)

						re1 := regexp.MustCompile(`Registry Expiry Date: (.*)Z`)
						expiryDate := strings.ReplaceAll(re1.FindString(whoisStr), "Registry Expiry Date: ", "")
						// fmt.Println(expiryDate)

						re2 := regexp.MustCompile(`Creation Date: (.*)Z`)
						createDate := strings.ReplaceAll(re2.FindString(whoisStr), "Creation Date: ", "")

						re3 := regexp.MustCompile(`Registrar URL: (.*)`)
						registrarUrl := strings.ReplaceAll(re3.FindString(whoisStr), "Registrar URL: ", "")
						registrarUrl = strings.ReplaceAll(registrarUrl, "\n", "")

						
					}
					
				}





uuid怎么下载(免费) | 求资源
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。 如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
标签
author
pings

每天都在打酱油~

评论
登录后评论