基于python(urlparse)模板的使用方法总结


Posted in Python onOctober 13, 2017

一、简介

urlparse模块用户将url解析为6个组件,并以元组形式返回,返回的6个部分,分别是:scheme(协议)、netloc(网络位置)、path(路径)、params(路径段参数)、query(查询)、fragment(片段)。

二、功能列举

1、urlparse.urlparse()(将url解析为组件,url必须以http://开头)

>>> urlparse.urlparse("https://i.cnblogs.com/EditPosts.aspx?opt=1")
ParseResult(scheme='https', netloc='i.cnblogs.com', path='/EditPosts.aspx', params='', query='opt=1', fragment='')

返回的元素中也会包含其他属性,比如(username,password,hostname,port):

>>> urlparse.urlparse("https://i.cnblogs.com:80/EditPosts.aspx?opt=1").port
80
>>> urlparse.urlparse("https://i.cnblogs.com:80/EditPosts.aspx?opt=1").hostname
'i.cnblogs.com'

2、urlparse.urljoin()(将相对的地址组合成一个url,对于输入没有限制,开头必须是http://,否则将不组合前面)

>>> urlparse.urljoin("https://i.cnblogs.com","EditPosts.aspx")
'https://i.cnblogs.com/EditPosts.aspx'

3、urlparse.urlsplit() :返回一个5个元素的元组,适用于遵循RFC2396的URL

>>> urlparse.urlsplit("https://i.cnblogs.com:80/EditPosts.aspx?opt=1")
SplitResult(scheme='https', netloc='i.cnblogs.com:80', path='/EditPosts.aspx', query='opt=1', fragment='')

4、urlparse.urlunsplit() :使用urlsplit的格式组合成一个url,传递的元素必须是5个,或者直接将分解的元组重新组合

>>> urlparse.urlunsplit(("https","i.cnblogs.com","EditPosts.aspx","a=a","b=b"))
'https://i.cnblogs.com/EditPosts.aspx?a=a#b=b'
>>> parse = urlparse.urlsplit("https://i.cnblogs.com:80/EditPosts.aspx?opt=1")
>>> urlparse.urlunsplit(parse)
'https://i.cnblogs.com:80/EditPosts.aspx?opt=1'

5、urlparse.urlunparse() :使用urlparse的格式组合成一个url,可以直接将urlparse的返回传递组合

>>> parse = urlparse.urlparse("https://i.cnblogs.com:80/EditPosts.aspx?opt=1")
>>> urlparse.urlunparse(parse)
'https://i.cnblogs.com:80/EditPosts.aspx?opt=1'
>>> urlparse.urlunparse(("https","i.cnblogs.com","/EditPosts.aspx","","opt=1",""))
'https://i.cnblogs.com/EditPosts.aspx?opt=1'

以上这篇基于python(urlparse)模板的使用方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python生成密码库功能示例
May 23 Python
Django admin美化插件suit使用示例
Dec 12 Python
在Python中实现替换字符串中的子串的示例
Oct 31 Python
Python字典循环添加一键多值的用法实例
Jan 20 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 Python
Python 装饰器原理、定义与用法详解
Dec 07 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
Apr 08 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
python跨文件使用全局变量的实现
Nov 17 Python
python 实现一个简单的线性回归案例
Dec 17 Python
python 装饰器重要在哪
Feb 14 Python
Python爬取英雄联盟MSI直播间弹幕并生成词云图
Jun 01 Python
Python创建对称矩阵的方法示例【基于numpy模块】
Oct 12 #Python
Python中的浮点数原理与运算分析
Oct 12 #Python
python中获得当前目录和上级目录的实现方法
Oct 12 #Python
Python实现的十进制小数与二进制小数相互转换功能
Oct 12 #Python
Python调用C# Com dll组件实战教程
Oct 12 #Python
python 实现一个贴吧图片爬虫的示例
Oct 12 #Python
Python实现曲线点抽稀算法的示例
Oct 12 #Python
You might like
火车头discuz6.1 完美采集的php接口文件
2009/09/13 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
javascript代码加载优化方法
2011/01/30 Javascript
Jquery异步请求数据实例代码
2011/12/28 Javascript
JS 去前后空格大全(IE9亲测)
2013/07/15 Javascript
改变文件域的样式实现思路同时兼容ie、firefox
2013/10/23 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
jQuery解析Json实例详解
2015/11/24 Javascript
日常收集整理的JavaScript常用函数方法
2015/12/10 Javascript
js实现简单的验证码
2015/12/25 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
2016/08/02 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
2020/11/16 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
浅析python中的迭代与迭代对象
2018/10/08 Python
Python中实现单例模式的n种方式和原理
2018/11/14 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
python 字典访问的三种方法小结
2019/12/05 Python
Python selenium使用autoIT上传附件过程详解
2020/05/26 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
欧舒丹美国官网:L’Occitane美国
2018/02/23 全球购物
尤为Wconcept中国官网:韩国设计师品牌服饰
2019/01/10 全球购物
校园餐饮创业计划书
2014/01/10 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
关于童年的读书笔记
2015/06/26 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书
煤矿安全生产工作总结
2015/08/13 职场文书
考教师资格证不要错过的4个最佳时机
2019/07/17 职场文书
Java 定时任务技术趋势简介
2022/05/04 Java/Android
java获取一个文本文件的编码(格式)信息
2022/09/23 Java/Android