urlparse模块(专门用来解析URL格式)

# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#urlparse模块(专门用来解析URL格式)


#URL格式:
#protocol ://hostname[:port] / path / [;parameters][?query]#fragment
#parameters:特殊参数,一般用的很少。



#1、urlparse方法
#将url解析为6元组,返回一个ParseResult对象元组。
url='http://user:passwd@www.163.com:80/path;parameters?query=argument#fragment'
import urlparse
pase=urlparse.urlparse(url)
print pase
#ParseResult(scheme='http', netloc='user:passwd@www.163.com:80', path='/path', params='parameters', query='query=argument', fragment='fragment')



#2、urlsplit方法
#返回一个SplitResult对象。如果url中没有[;parameters],建议使用urlsplit,更明确,更简洁。
pase=urlparse.urlsplit(url)
print pase
#SplitResult(scheme='http', netloc='user:passwd@www.163.com:80', path='/path;parameters', query='query=argument', fragment='fragment')




#3、获取URL属性值等方法
url='http://user:passwd@www.163.com:80/path?query=argument#fragment'
pase=urlparse.urlsplit(url)
print pase.scheme#http
print pase.netloc#user:passwd@www.163.com:80
print pase.path#/path
print pase.query#query=argument
print pase.username#user
print pase.password#passwd
print pase.hostname#www.163.com
print pase.port#80
print pase.geturl()#http://user:passwd@www.163.com:80/path?query=argument#fragment



#4、urljoin,进行合并url操作,给FAQ.html添加基础URL地址
print urlparse.urljoin('http://www.cwi.nl/%7Eguido/Python.html', 'FAQ.html')
#'http://www.cwi.nl/%7Eguido/FAQ.html'




#5、实例:
url='http://api.k780.com:88/?app=weather.today&weaid=1&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=xml'
pase=urlparse.urlsplit(url)
print pase
'''
SplitResult(
scheme='http',
netloc='api.k780.com:88',
path='/',
query='app=weather.today&weaid=1&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=xml',
fragment=''
)
'''

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值