通过Python的urllib模块中的urlparse分析函数,可以把http协议中网址的各个字段内容分别解析出来,urlparse()函数的返回值是一个'urllib.parse.ParseResult'类,该类有以下6个属性段:
属性scheme:代表的是通信协议;属性netloc:代表的是域名;属性path:代表的是网页所在的位置和网页文件名;属性params:代表的是路径字段参数;属性query:是查询用的参数,也是GET的参数;属性fragment:是片段项下面,通过一个示例,看Python是如何解析网址的。
from urllib.parse import urlparse urlParse = urlparse\ ('http://write.blog.csdn.net/postedit?ticket=ST-74842-Xvqcb9juIohmn1Sy') print(urlParse) print(type(urlParse)) for term in urlParse: print(term) print("------------------------------") print("1、scheme------>{}".format(urlParse.scheme)) print("------------------------------") print("2、netloc------>{}".format(urlParse.netloc)) print("------------------------------") print("3、path------>{}".format(urlParse.path)) print("------------------------------") print("4、query------>{}".format(urlParse.query)) 运行结果: ParseResult(scheme='http', netloc='write.blog.csdn.net', path='/postedit', params='', query='ticket=ST-74842-Xvqcb9juIohmn1Sy', fragment='') <class 'urllib.parse.ParseResult'> http write.blog.csdn.net /postedit ticket=ST-74842-Xvqcb9juIohmn1Sy ------------------------------ 1、scheme------>http ------------------------------ 2、netloc------>write.blog.csdn.net ------------------------------ 3、path------>/postedit ------------------------------ 4、query------>ticket=ST-74842-Xvqcb9juIohmn1Sy Process finished with exit code 0