Domain Parser can parse any URL. You can obtain the root domain directly or obtain the domain based on the domain level.
required go 1.21+
go install github.com/feiyizhou/domain-parser@latest
package main
import (
"fmt"
"log"
"github.com/feiyizhou/domain-parser"
)
var rawURL = "https://github.com/feiyizhou"
func main() {
topLevelDomain, err := domain_parser.GetTopLevelDomain(rawURL)
if err != nil {
log.Fatal(err)
}
fmt.Println(topLevelDomain)
domain, err := domain_parser.GetDomainByLevel(rawURL, 0)
if err != nil {
log.Fatal(err)
}
fmt.Println(domain)
domainArr, err := domain_parser.GetDomainArr(rawURL)
if err != nil {
log.Fatalln(err)
}
fmt.Println(domainArr)
}
Domain Parser is available as open source under the terms of the MIT License