关于urllib.parse

原文地址:https://blog.csdn.net/zly412934578/article/details/77776659

This module defines a standard interface to break Uniform Resource Locator (URL) strings up in components (addressing scheme, network location, path etc.), to combine the components back into a URL string, and to convert a “relative URL” to an absolute URL given a “base URL.”


以上是官方API上对这个模块的解释:这个模块是一个能URL字符串拆分成组件,能把组件合并成URL和将一个相对的URL转成一个抽象的URL,从而得到一个基本的URL标准格式。
支持的URL格式file、ftp、gopher、hdl、http、https、imap、mailto,mms、news、nntp、prospero、rsync、rtsp、rtspu、sftp、shttp、sip、sips、snews、svn、svn+ssh、telnet、wais、ws、wss

URL parsing(URL解析)

URL parsing函数注重将URL字符串分号才能组件,或者将组件合并成一个URL
urllib.parse.urlparse(urlstring,scheme='',allow_fragments=True)包含六个部分,元组中每一个元素都是一个字符串,可以为空,这六个部分均不能再被分割成更小的部分。

关于urllib.parse_第1张图片
image.png

例如:

import urllib.parse
 
print(urllib.parse.urlparse("https://www.zhihu.com/question/50056807/answer/223566912"))

结果

ParseResult(scheme='https', netloc='www.zhihu.com', path='/question/50056807/answer/223566912', params='', query='', fragment='')

urllib.parse.urlunparsre(parts)

这个函数可以将urlparse()分解出来的元组组装成URL

实例:

import urllib.parse
# print(urllib.parse.parse_qsl("FuncNo=9009001&username=1"))
parsed=urllib.parse.urlparse("https://www.zhihu.com/question/50056807/answer/223566912")
print(parsed)
# print(urllib.parse.parse_qs("https://www.zhihu.com/question/50056807/answer/223566912"))
# print(urllib.parse.parse_qs("FuncNo=9009001&username=1"))
t=parsed[:]
print(urllib.parse.urlunparse(t))

输出结果:

ParseResult(scheme='https', netloc='www.zhihu.com', path='/question/50056807/answer/223566912', params='', query='', fragment='')
https://www.zhihu.com/question/50056807/answer/223566912

你可能感兴趣的:(关于urllib.parse)