• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Python urlparse函数详解

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Python Urlparse函数声明

urlparse.urlparse(urlstring[, scheme[, allow_fragments]])

将URL解析为六个组件,返回一个6元组。这对应于URL的一般结构:scheme:// netloc / path; parameters?query#fragment。每个元组项都是一个字符串,可能是空的。组件不会在较小的部分分解(例如,网络位置是单个字符串),并且%转义不会展开。如上所示的分隔符不是结果的一部分,除了路径组件中的前导斜杠,如果存在则保留。

用法示例一:

>>>
>>> from urlparse import urlparse
>>> o = urlparse('http://www.cwi.nl:80/%7Eguido/Python.html')
>>> o   
ParseResult(scheme='http', netloc='www.cwi.nl:80', path='/%7Eguido/Python.html',
            params='', query='', fragment='')
>>> o.scheme
'http'
>>> o.port
80
>>> o.geturl()
'http://www.cwi.nl:80/%7Eguido/Python.html'

遵循RFC 1808中的语法规范,urlparse仅在通过’//’正确引入netloc时识别netloc。否则,该输入被推定为相对URL,从而以路径组件开头。

用法示例二

>>>
>>> from urlparse import urlparse
>>> urlparse('//www.cwi.nl:80/%7Eguido/Python.html')
ParseResult(scheme='', netloc='www.cwi.nl:80', path='/%7Eguido/Python.html',
           params='', query='', fragment='')
>>> urlparse('www.cwi.nl/%7Eguido/Python.html')
ParseResult(scheme='', netloc='', path='www.cwi.nl/%7Eguido/Python.html',
           params='', query='', fragment='')
>>> urlparse('help/Python.html')
ParseResult(scheme='', netloc='', path='help/Python.html', params='',
           query='', fragment='')

如果指定了scheme参数,则给出默认寻址方案,仅在URL未指定的方案时使用。此参数的默认值为空字符串。

如果allow_fragments参数为false,则片段标识符不会被识别并作为前一个组件的一部分进行解析,即使URL的寻址方案通常不支持它们。此参数的默认值为True。

返回值实际上是元组的子类的一个实例。此类具有以下附加的只读方便属性:

Attributes Index Value Value if not present
scheme 0 URL scheme specifier scheme parameter
netloc 1 Network location part empty string
path 2 Hierarchical path empty string
params 3 Parameters for last path element empty string
query 4 Query component empty string
fragment 5 Fragment identifier empty string
username User name None
password Password None
hostname Host name (lower case) None
port Port number as integer, if present None

有关结果对象的更多信息,请参阅urlparse()urlsplit()的结果部分。

补充说明

  • 2.5版本更改:添加属性返回值。

  • 在版本2.7中更改:添加了IPv6 URL解析功能。


鲜花

握手

雷人

路过

鸡蛋
专题导读
上一篇:
MySql(MariaDB)在小内存VPS上崩溃,该怎么办?发布时间:2022-05-14
下一篇:
MariaDB创建降序索引发布时间:2022-05-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap