python 支持两种不同的模块,两者以不同的功能和兼容性来处理URL。一种是urlparse,另外一种是urllib。
urlparse 模块用于处理一些基本功能,用于处理URL字符串,这些功能包括urlparse(),urlunparse()和urljoin()。
urlparse()将URL字符串解析为一些url组建。语法如下
urlparse (urlstr,defProtSch = none,allowFrag=None)
urlparse()将url解析为6个元组(prot_sch,net_loc,path,params,query,frag)
例如:urlparse.urlparse('http://www.python.org/doc/FAQ.html')
('http','www.python.org','/doc/FAQ.html','','','')
urlparse.urlunparse()
urlunparse()的功能与urlpase()完全相反,作用是把经过urlparse()处理的6个元组拼接成一个完整的url返回
urlparse.urljoin()在需要处理多个相关的URL时我们需要用到urljoin()的功能,例如一个页面可能会产生一系列页面url。urljoin的语法为
urljoin(baseurl, newurl, allowFrag=None)
urljoin()取得根域名,并将其根路径(net_loc及前边完整路径,但是不包括末端的文件)与newurl连接起来
urlparse.urljoin('http://www.python.org/doc/FAQ.html','current/lib/lib.html')
网友评论