用spilt()方法编写一个程序,实现类似urlparse()的功能,对一个合法的URL地址进行解析,要求解析端口,解析后的每一部分存放在列表中,并按照一定的格式输出
时间: 2024-06-08 07:09:24 浏览: 66
2017_2018学年高中英语每日一题第06周it的用法含解析新人教版选修6
下面是一个使用 split() 方法实现类似 urlparse() 的程序,可以对一个合法的 URL 地址进行解析,并将解析后的每一部分存放在列表中,最后输出格式化后的结果:
```python
def urlparse(url):
# 解析协议
protocol, url = url.split("://", 1)
# 解析域名和路径
domain, path = url.split("/", 1)
# 解析端口
if ":" in domain:
domain, port = domain.split(":", 1)
else:
port = None
# 返回解析结果的列表
return [protocol, domain, port, path]
# 测试
url = "https://www.baidu.com:8080/index.html"
result = urlparse(url)
print(result)
print("Protocol: {}\nDomain: {}\nPort: {}\nPath: {}".format(*result))
```
输出结果为:
```
['https', 'www.baidu.com', '8080', 'index.html']
Protocol: https
Domain: www.baidu.com
Port: 8080
Path: index.html
```
该程序首先使用 split() 方法将 URL 地址按照 "://" 分成协议和域名路径两部分,然后再将域名路径部分按照 "/" 分成域名和路径两部分。如果域名中包含了端口号,那么再使用 split() 方法将其分离出来,否则端口号为 None。最后将解析结果存放在列表中,并输出格式化后的结果。
阅读全文