public class URLUtil { private final static Set PublicSuffixSet = new HashSet( Arrays.asList(new String( "com|org|net|gov|edu|co|tv|mobi|info|asia|xxx|onion|cn|com.cn|edu.cn|gov.cn|net.cn|org.cn|jp|kr|tw|com.hk|hk|com.hk|org.hk|se|com.se|org.se") .split("\\|"))); private static Pattern IP_PATTERN = Pattern .compile("(\\d{1,3}\\.){3}(\\d{1,3})"); * 获取url的顶级域名 * @param url * @return public static String getDomainName(URL url) { String host = url.getHost(); if (host.endsWith(".")) host = host.substring(0, host.length() - 1); if (IP_PATTERN.matcher(host).matches()) return host; int index = 0; String candidate = host; for (; index >= 0;) { index = candidate.indexOf('.'); String subCandidate = candidate.substring(index + 1); if (PublicSuffixSet.contains(subCandidate)) { return candidate; candidate = subCandidate; return candidate; * 获取url的顶级域名 * @param url * @return * @throws MalformedURLException public static String getDomainName(String url) throws MalformedURLException { return getDomainName(new URL(url)); * 判断两个url顶级域名是否相等 * @param url1 * @param url2 * @return public static boolean isSameDomainName(URL url1, URL url2) { return getDomainName(url1).equalsIgnoreCase(getDomainName(url2)); * 判断两个url顶级域名是否相等 * @param url1 * @param url2 * @return * @throws MalformedURLException public static boolean isSameDomainName(String url1, String url2) throws MalformedURLException { return isSameDomainName(new URL(url1), new URL(url2)); import java.net.MalformedURLException;import java.net.URL;import java.util.Arrays;import java.util.HashSet;import java.util.Set;import java.util.regex.Pattern;public class URLUtil { private
顶级 域名 从给定的 URL 提取 顶级 域(TLD)。 TLD名称列表取自。 (可选)在不存在的TLD上引发异常或以静默方式失败(如果fail_silently参数设置为True)。 Python 3.6、3.7、3.8和3.9。 可在“文档”上找到。 PyPI上的最新稳定版本: pip install tld 或来自GitHub的最新稳定版本: pip install https://github.com/barseghyanartur/tld/archive/stable.tar.gz 除以下示例外,请参见jupyter笔记本工作簿文件。 从给定的 URL 获取 TLD名称作为字符串 from tld import get_tld get_tld ( "http://www.google.co.uk" ) # 'co.uk' get_tl
1 import java .net.Malformed URL Exception; 2 import java .net. URL ; 3 import java .util.Arrays; 4 import java .util.HashSet; 5 import java .util.Set; 6 import java .util.regex.Pattern;...
String url = "http://anotherbug.blog.china java world.com/entry/4545/0/"; Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)",Pattern.CASE_INSENSITIVE); Matcher m...
国家/地区 顶级 域名 (ccTLD:Country Code Top Level Dom ain ) (2)generic:   通用 顶级 域名 (gTLD:generic Top Level Dom ain ) (3)generic-restricted:   有限制的通用 顶级 域名 (需要审核) (4...
// 获取 域名 的函数       //包含全部的cn 域名 后缀       static String[] xCN = { ".com.cn", ".net.cn", ".gov.cn", ".edu.cn",               ".org.cn", ".mil.cn
springMVC的执行流程 (1)用户发送请求至前端控制器DispatcherServlet; (2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求 获取 Handle; (3)处理器映射器根据请求 url 找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet; (4)DispatcherServlet 调用 HandlerAdapter处理器适配器; (5)HandlerAdapter 经过适配调用 具体处
源代码package edu.uci.ics.crawler4j. url ;import org.slf4j.Logger; import org.slf4j.LoggerFactory;import java .io.BufferedReader; import java .io.InputStream; import java .io.InputStreamReader; import java .net
[code=" java "]// 获取 域名 的函数 //包含全部的cn 域名 后缀 static String[] xCN = { ".com.cn", ".net.cn", ".gov.cn", ".edu.cn", ".org.cn", ".mil.cn", ".ac.cn", ".bj.cn", ".sh.c
2. 使用正则表达式来匹配和提取 域名 部分。 - 域名 通常由以下部分组成:协议(可选), 域名 ,端口号(可选)。 - 一个可能的正则表达式模式可以是:`/^((http[s]?|ftp):\/)?\/?([^:\/\s]+)(:[0-9]+)?/i`。 - 在这个模式 : - `/`是正则表达式的起始和结束符号。 - `^`表示字符串的起始位置。 - `(http[s]?|ftp)`匹配http、https或ftp协议。 - `:`、`\/`、`?`等字符在正则表达式 有特殊的含义,所以需要用`\`进行转义。 - `[^:\/\s]+`匹配任意不是`:`、`/`和空格的字符。 - `()`将匹配的子串捕获。 - `:`表示端口号的开始。 - `[0-9]+`匹配一位或多位数字。 - `?`表示前面的元素是可选的。 3. 使用 Java Script 的正则表达式方法(如`match()`)来执行匹配操作并提取 域名 部分。 - 例如,`var url = "http://www.example.com:8080/path/to/file.html";`表示 URL 字符串。 - `var dom ain = url .match(/^((http[s]?|ftp):\/)?\/?([^:\/\s]+)(:[0-9]+)?/i)[3];`可以将 域名 部分提取出来。 4. 最后,可以打印或使用 域名 部分进行其他操作。 - 例如,`console.log( dom ain );`可以将 域名 部分打印到控制台上。 这样,通过使用正则表达式进行匹配和提取,就能够截取 url 域名 部分了。