docs.python.org/zh-cn/3.8/l…html
解析一個 URL 得到各個概念所對應的值在 Python 中顯得很簡單, Python3 中將 urllib2
、urlparse
和 robotparse
併入了 urllib
模塊中, 因此本來在 Python 導入的方式在 Python3 中應該這樣導入:python
from urllib.parse import urlparse
複製代碼
使用它咱們能夠得到 ParseResult
對象, 咱們能夠經過下標或者屬性名來訪問對象屬性:函數
屬性名 | 索引值 | 說明 | 空值狀況下表達 |
---|---|---|---|
scheme | 0 | URL 協議 | "" |
netloc | 1 | URL 域名 | "" |
path | 2 | URL 請求路徑 | "" |
params | 3 | URL 可選參數 | "" |
query | 4 | URL 鍵值對參數 | "" |
fragment | 5 | URL 特殊錨 | "" |
username | 用戶名 | None |
|
password | 密碼 | None |
|
hostname | 主機名(小寫) | None |
|
port | 若是存在, 則是整數端口號 | None |
咱們測試下這個函數的使用:post
#!/usr/bin/env python
# _*_ Coding: UTF-8 _*_
from urllib.parse import urlparse
result = urlparse('https://juejin.im/user/5da32395e51d4578200cc9c5/posts?params=123&username=123')
print(result)
複製代碼
輸出的結果是:測試
ParseResult(
scheme='https',
netloc='juejin.im',
path='/user/5da32395e51d4578200cc9c5/posts',
params='',
query='params=123&username=123',
fragment=''
)
複製代碼