@
Livid 从来没有用过,都不知道这个函数
不过你可以看一下urlparse.py 里面抛出异常的代码,写的很清楚
if (('[' in netloc and ']' not in netloc) or
(']' in netloc and '[' not in netloc)):
raise ValueError("Invalid IPv6 URL")
这问题的根源还是在django.util.htm里面的代码
simple_url_re = re.compile(r'^https?://\w')
simple_url_2_re = re.compile(r'^www\.|^(?!http)\w[^@]+\.(com|edu|gov|int|mil|net|org)$')
这两个re表达式,特别是第二个的 “www"
google.com] 没有问题
www.google.com] 就有问题
简单说,问题出在django开发者判断一个字符串是url的依据