介绍
这篇文章给大家分享的是有关如何使用python实现切割得url到域名,协议,主机名等各个字段的例子的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
实现代码:
# !/usr/bin/python #,- *安康;编码:UTF-8 - * - 功能:对URL进行分割,基于urlparse,, publicsuffix,, urllib编写 & # 39;& # 39;& # 39; 得到urlparse import  urlparse import 编解码器 得到publicsuffix import  PublicSuffixList 得到urllib import  splitport import 再保险 , , def domain_split (server_domain): & # 39;才能& # 39;& # 39; server_domain才能为网站所用服务名+域名 分才能割域名,,得到前缀(服务名),主机域名,后缀(顶级域名) ,,,输入www.baidu.com,输出& # 39;www # 39;,, & # 39;百度# 39;,,& # 39;com # 39; ,,,输入172.31.137.240,输出& # 39;& # 39;,& # 39;172.31.137.240& # 39;,,& # 39;& # 39; & # 39;才能& # 39;& # 39; PSL_FILE 才能=,codecs.open (& # 39; public_suffix_list.dat& # 39;,,编码=& # 39;use utf8 # 39;) 时间=psl 才能;PublicSuffixList (PSL_FILE) 时间=domain 才能;psl.get_public_suffix (server_domain) #,才能取域名的第一个字段,即第一个& # 39;强生# 39;之前的为主机域名,,后面为顶级域名,前面为所使用的服务 if 才能;& # 39;强生# 39;,拷贝域: ,,,server =, server_domain [: len(域)] ,,,host =,域[:domain.index(& # 39; # 39;公司)) ,,,top =,域[domain.index(& # 39; # 39;公司):] ,,,hostname =, server +, host +最高 其他的才能:#,说明提取域名失败,例如172.31.137.240等IP形式,此时全部当作主机域名 ,,,server =, & # 39; & # 39; ,,,host =server_domain ,,,top =, & # 39; & # 39; ,,,hostname =server_domain return 才能,服务器,主机,,,主机名 , , def url_split_new (url): & # 39;才能& # 39;& # 39; url才能分割 & # 39;才能& # 39;& # 39; if 才能;not  url.startswith (& # 39; http # 39;):, #,补全协议,否则urlparse出的错 ,,,url =, & # 39; http://& # 39; +, url 时间=parts 才能;urlparse (url) #,才能服务+域名& # 39;www.baidu.api.com.cn& # 39;切分 ,,服务器,主机,,,,hostname =, domain_split (parts.netloc) 主机,才能,port =, splitport(主机) if 才能;port ==,没有:,port =, & # 39; & # 39; return 才能{& # 39;协议# 39;:,parts.scheme,, & # 39;主机名# 39;:,主机名,& # 39;path & # 39;:, parts.path} , , if __name__ ==, & # 39; __main__ # 39;: print 才能;url_split_new (& # 39; http://www.baidu.com/& # 39;) print 才能;url_split (& # 39; http://www.baidu.com/& # 39;)
感谢各位的阅读!关于“如何使用python实现切割得url到域名,协议,主机名等各个字段的例子”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!