一、简介

urlparse库用于把url解析为各个组件,支持file,ftp,http,https, imap, mailto, mms, news, nntp, prospero, rsync, rtsp, rtspu, sftp, shttp, sip, sips, snews, svn, svn+ssh, telnet等几乎所有的形式。根据其官网的说明,在Python3.0中,此库已经更名为urllib.parse了。官方文档地址:http://docs.python.org/library/urlparse.html

urlparse.html" style="color:rgb(138,112,62); line-height:28px; text-decoration:none; font-family:"Hiragino Sans GB W3","Hiragino Sans GB",Arial,Helvetica,simsun,u5b8bu4f53; font-size:16px; background-color:rgb(204,206,208)" rel="noopener noreferrer">

二、函数说明

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

该函数将一个url字符串分解为6个元素,以元祖的形式返回。这与URL的一般结构相关:scheme://netloc/path;parameters?query#fragment.解析得到的每个元素都是一个字符串,有的元素可能为空.除了返回这6个元素外,返回的对象还包含了一些属性:username、password、hostname、port.例如:

>>> o = urlparse('http://www.cwi.nl:80/%7Eguido/Python.html')

>>> o

ParseResult(scheme='http',netloc='www.cwi.nl:80', path='/%7Eguid/Python.html', params='', query='', fragment='')

>>> o.port

80

>>> o.hostname

'www.cwi.nl'

注意一点,若要得到正确的netloc值,则url必须以//开头,否则会被归到path值里去.例如:

>>> 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='')

其实,返回的结果是tuple子类的一个实例.该类具有如下的只读属性:

2.Urlunparse此函数作用是把分解的元素再拼合还原为一个url,该函数的参数可以是任意的六元组.例:

>>> print urlunparse(o)

http://www.cwi.nl:80/%7Eguido/Python.html

3.urlsplit(urlstring[, scheme[, allow_fragments]])此函数与类似,不过返回的是一个5元素的元祖,不包括params。

4.urlunsplit(parts)函数此函数是将urlsplit函数分解的元素再组合起来。

5.urljoin(base,url[,allow_fragments]):基于一个base URL和另一个URL构造一个绝对URL.例如:

>>> from urlparse import urljoin

>>> urljoin('http://www.cwi.nl/%7Eguido/Python.html', 'FAQ.html')

'http://www.cwi.nl/%7Eguido/FAQ.html'

注意,如果参数中的url为一个绝对路径的URL(即以//或scheme://开始),那么url的host name和(或)scheme将会出现在结果中.例如:

>>> urljoin('http://www.cwi.nl/%7Eguido/Python.html','//www.python.org/%7Eguido')

'http://www.python.org/%7Eguido'

6.其它的方法不再一一介绍.

parse python函数_Python之urlparse模块相关推荐

  1. parse python函数_Python爬虫 - parse模块常用方法

    url.parse:定义了url的标准接口,实现url的各种抽取 parse模块的使用:url的解析.合并.编码.解码 使用时需导入 from urllib import parse urlparse ...

  2. python url模块介绍_python 中 urlparse 模块介绍

    urlparse模块主要是用于解析url中的参数  对url按照一定格式进行 拆分或拼接 1.urlparse.urlparse 将url分为6个部分,返回一个包含6个字符串项目的元组:协议.位置.路 ...

  3. python导入不在同一路径的函数_Python小课堂|模块

    Python3   模块 在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一 ...

  4. python机制_python 加载模块机制

    1,使用系统函数import() stringmodule = _import('string') 2,使用imp 模块 import imp stringmodule = imp.loadmodul ...

  5. base6 python 字节_Python使用base64模块进行二进制数据编码详解

    前言 昨天团队的学妹来问关于POP3协议的问题,所以今天稍稍研究了下POP3协议的格式和Python里面的poplib.而POP服务器往回传的数据里有一部分需要用到Base64进行解码,所以就顺便看了 ...

  6. python数据处理常用函数_Python大数据处理模块Pandas

    Pandas使用一个二维的数据结构DataFrame来表示表格式的数据,相比较于Numpy,Pandas可以存储混合的数据结构,同时使用NaN来表示缺失的数据,而不用像Numpy一样要手工处理缺失的数 ...

  7. python如何导入函数_Python导入(import)模块的方法

    1.导入整个模块:模块 是扩展名为.py的文件,包含要导入到程序中的代码.import module_name 2.导入特定的函数from module_name import function_na ...

  8. python画正切函数_python的pygal模块绘制反正切函数图像方法

    python的pygal模块绘制反正切函数图像方法 python是一个很有趣的语言,可以在命令行窗口运行.python中有很多功能强大的模块,这篇经验告诉你,如何使用python的pygal模块绘制反 ...

  9. python中的strptime函数_Python中datetime模块中strftime/strptime函数

    python中datetime模块非常好用,提供了日期格式和字符串格式相互转化的函数strftime/strptime 1.由日期格式转化为字符串格式的函数为: datetime.datetime.s ...

最新文章

  1. 计算机设备图标怎么删除,电脑设备和驱动器中没用的图标怎么删除? 我的电脑中手机...
  2. 游戏对象的移动旋转缩放
  3. 机房收费--组合查询
  4. 搜索引擎重复网页发现技术分析
  5. 【Canvas】如何用Canvas绘制折线图
  6. Http协议(7)—Http缓存
  7. 5000元性价比高的笔记本_2018性价比笔记本电脑品牌推荐 5000左右笔记本性价比推荐...
  8. Linux编程手册读书笔记第五章(20140408)
  9. oracle 关于归档的视图,oracle 与归档日志相关的几个视图
  10. 【java8新特性】——Optional详解(三)
  11. php制作后台驻留执行 ,同时提前返回逻辑信息进行判断的实例
  12. VR/AR平台战略与实践(1)
  13. 数据处理利器python与scala基本数据结构对比分析1-大数据ML样本集案例实战
  14. 从0开始学习 GitHub 系列之「Git 进阶」
  15. JSP内置对象及其常用方法
  16. Informatic 9.0 client和server 安装配置
  17. 辞旧迎新,新工作感悟!
  18. java游戏仙剑外传李逍遥背_经典RPG游戏《仙剑奇侠传》李逍遥后期还在哪些版本中出现过?...
  19. 2023年中职网络安全技能竞赛网络安全事件响应解析(保姆级)
  20. rgb颜色域与饱和度的关系

热门文章

  1. Word无法插入公式项目灰色不可用
  2. 什么是Scriptlet
  3. cobra mysql_CentOS 7安装Cobra
  4. Python Console报错:Cannot start process, the working directory does not exist
  5. ShaderGraph 之实现虚拟室内效果
  6. 通俗理解【卷】积+互相关与卷积
  7. 数学和物理符号中的希腊字母
  8. 只看这一个侧脸,猜一猜,这是哪个动漫里的人物?
  9. Python中with语句的作用
  10. 【微信小程序】小程序显示弹窗时禁止下层的内容滚动|遮罩层滚动穿透