Python判断给定的网址是否是有效的URL地址

2022-03-14 00:00:00 判断 地址 给定
def is_valid_url(str):
    """检查给定的字符串是否是有效的url"""

    # 如果邮件长度不是11-500个字符,则认为不正确
    if not check_len(str, 11, 500):
        return False

    pattern = "(http|https)\\://([a-zA-Z0-9\\.\\-]+(\\:[a-zA-" \
              + "Z0-9\\.&%\\$\\-]+)*@)?((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{" \
              + "2}|[1-9]{1}[0-9]{1}|[1-9])\\.(25[0-5]|2[0-4][0-9]|[0-1]{1}" \
              + "[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\\.(25[0-5]|2[0-4][0-9]|" \
              + "[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\\.(25[0-5]|2[0-" \
              + "4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0" \
              + "-9\\-]+\\.)*[a-zA-Z0-9\\-]+\\.[a-zA-Z]{2,4})(\\:[0-9]+)?(/" \
              + "[^/][a-zA-Z0-9\\.\\,\\?\\'\\\\/\\+&%\\$\\=~_\\-@]*)*$"
    m = re.match(pattern, str)
    return m is not None

以上Python代码通过正则验证来检测给定的字符串是否是有效的URL,

调用代码:

print(is_valid_url('http://www.pidancode.com'))

返回结果:True

相关文章