问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

urllib.parse在python2.7中怎么用

发布网友 发布时间:2022-04-27 08:59

我来回答

2个回答

懂视网 时间:2022-04-18 19:36

下面小编就为大家带来一篇基于python(urlparse)模板的使用方法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、简介

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'

热心网友 时间:2022-04-18 16:44

最新版的python3.3.0已经发布了。相较于python3.0,3.2的改动并不大。但网上的大量的教程等大都以2.x版本为基础。这为想要从python3.0学起的菜鸟带来了不少的困难。 作为一只菜鸟,最近想学习一下python中urllib模块的使用方法。从网上找的最简单的实例:把google 首页的html抓取下来并显示在控制台上 代码:

[python] view plain copy

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
你见过最古老的东西是什么,有多少年历史 WORD中怎么输出稿纸模式word中怎么输出稿纸模式 女性尿检阴性是什么意思 阴性尿检是什么意思 尿检阴性是什么 win10如何查看电脑配置参数 win10怎样查看电脑配置参数 多地对公职人员提接种要求 亚马逊订单可以退回任何Kohl's商店,7月份生效 亚马逊提供免费退货,珠宝退货卖家要承担运费吗 新的亚马逊退货政策惹争议!官方解答来了 奔驰2014ml400都有什么隐藏功能 python3.3.2 urllib 正则匹配错误 正则表达式没有问题 但是最后提示错误 是否网页对象和正则无法匹配? 奔驰C级能刷隐藏功能吗 我看奥迪都可以的 可以的话怎么刷? python中urllib中urlopen函数老是提示错误,请各位帮忙,当改成urllib... 奔驰S400能刷出隐藏功能吗 求大神指导:用python的urllibe.urlretrieve(url, path)下载指定的url... 奔驰GLS车速限制提醒系统怎么刷隐藏? 奔驰c260能刷出什么隐藏功能 Python urllib2: HTTP 400 error 奔驰e260豪华版刷配置隐藏是什么意思 python urllib2进行网页源代码扒取时,出现urllib2.HTTPError: HTTP E... 奔驰w221刷隐藏功能 pythonrpc中服务器urlerror能抛出异常么 奔驰GLE400完美的座驾,刷隐藏激活交通标志识别功能 python27中except urllib2.URLError, e:语句的小问题 python 爬虫时,urllib2.HTTPError:HTTP Error 502:Bad Gateway是什么... python3.4 urllib.error.URLError: <urlopen error unknown url type... 如何大批量清除线上MySQL历史数据 如何大批量清除线上MySQL历史数据 comsol如何获取一条线上的压力数据 关于雪的作文四百字左右. 2012款奔驰s300商务型有什么隐藏功能可以刷出来 python3中builtwith包不能用怎么办 记一场难忘的雪作文八百字(高中) python3中为什么urlparse.urljoin没有了 作文提目是《下雪的感受》800字 作文:我心目中的雪 去玩雪的作文 精品六百字 春天的雪的作文怎么写 鱼泡怎么做好吃,鱼泡的吃法 泡椒鱼泡怎么做? 这几天老是梦见我抱个不认识的孩子我一直再说我没有家了怎么回事?_百 ... 梦到抱小婴儿 是个男孩 而且很可爱 两年了每晚都梦见一个或几个不认识的人是怎么了? 什么是快递单号? lol单子号什么意思 天津的中通快递单子号是什么数字开头的 怎么查询邮政单子号? 交警单子号0051代表什么? 怎么查单子号?