不使用庫,本身能夠利用正則表達式實現解析域名各部分參數:協議、域名、端口、路徑、載荷等。python
使用的正則表達式以下:正則表達式
r'''(?x)\A ([a-z][a-z0-9+\-.]*):// # Scheme ([a-z0-9\-._~%]+ # IPv4 host |\[[a-z0-9\-._~%!$&'()*+,;=:]+\]) # IPv6 host (:[0-9]+)? # Port number ([a-zA-Z0-9\-\/._~%!$&'()*+]+)? # path (\?[a-zA-Z0-9&=]+)? # query '''
例如,對於"https://www.baidu.com/xxx/xxx?s=xxx"網址,解析出來各部分爲:blog
('https', 'www.baidu.com', None, '/xxx/xxx', '?s=xxx')