python - 在 Python 中验证 URL

标签 python url url-validation

我一直在尝试找出验证 URL 的最佳方法(特别是在 Python 中),但一直未能真正找到答案。似乎没有一种已知的方法来验证 URL,这取决于您认为可能需要验证哪些 URL。同样,我发现很难找到一个易于阅读的 URL 结构标准。我确实找到了 RFC 3986 和 3987,但它们包含的内容远不止其结构。

我是不是遗漏了什么,或者是否没有一种标准的方法来验证 URL?

最佳答案

这看起来可能是 How do you validate a URL with a regular expression in Python? 的副本

您应该能够使用此处描述的 urlparse 库。

>>> from urllib.parse import urlparse # python2: from urlparse import urlparse
>>> urlparse('actually not a url')
ParseResult(scheme='', netloc='', path='actually not a url', params='', query='', fragment='')
>>> urlparse('http://google.com')
ParseResult(scheme='http', netloc='google.com', path='', params='', query='', fragment='')

在要检查的字符串上调用 urlparse,然后确保 ParseResult 具有 schemenetloc< 的属性

关于python - 在 Python 中验证 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22238090/

相关文章:

java - 如何知道字符串路径是 Web URL 还是基于文件

php - 网址是否有效

java - 验证没有 http 的 URL

python - 在 Pandas 中 : Interpolate between two rows such that the sum of interpolated values + second row = old value of the second row

Python 子进程和标准输出 - 程序死锁

python - 如何将 python 字典的键显示为 HTML 表头,并将每个键的值显示为该表头下的一行?

url - Socket.io 在 URL 中调用 http ://undefined/. ...

python - AppEngine 文档推荐命令行标志而不是 app.yaml 文件元素

asp.net - Url 编码 # (%23) 在 ASP.NET 应用程序中导致 404

Yii 框架 : Specifying defaultScheme in URL Validator