Python 解析獲取 URL 參數及使用步驟
下文中使用的 URL 地址是:https://www.example.com/?keyword=abc&id=12
Python 解析獲取 URL 參數的步驟如下:
首先導入 Python3 自帶的urllib.parse
該模塊用於將 URL 解析為各部分(需要註意的是解析的是字符串,所以要加引號):
>>> from urllib import parse
或者
>>> from urllib.parse import urlparse
然後使用urlparse
來將字符串解析成 URL
>>> url ParseResult(scheme='https', netloc='www.example.com', path='/', params='', query='keyword=abc&id=12', fragment='')
或者直接
>>> url=urlparse("https://www.example.com/?keyword=abc&id=12")
這時候url
變量就包含瞭 URL 的各部分信息,如下:
>>> url ParseResult(scheme='https', netloc='www.example.com', path='/', params='', query='keyword=abc&id=12', fragment='')
可以通過以下方式來訪問其中某一部分的內容,這裡以query
部分為例(也就是參數部分):
>>> url.query 'keyword=abc&id=12'
轉換成字典格式
假如需要將其以字典格式返回,那麼就需要使用parse.parse_qs
:
>>> parad=parse.parse_qs(url.query) >>> parad {'keyword': ['abc'], 'id': ['12']}
也可以獲取其中某一個參數對應的值,如下:
>>> para.get('id') ['12']
或者直接使用:
>>> parse.parse_qs(url.query).get('id') ['12']
轉換成列表格式
假如需要將其以列表格式返回,列表裡的元素是元組(tuple)格式,那麼就需要使用parse.parse_qsl
:
>>> paral=parse.parse_qsl(url.query) >>> paral [('keyword', 'abc'), ('id', '12')]
使用起來,沒有字典那麼方便直接,如下:
>>> paral[0][0] 'keyword'
更詳細嚴謹的介紹和使用方法可以查看官方文檔:https://docs.python.org/3/library/urllib.parse.html
到此這篇關於Python 解析獲取 URL 參數以及使用的文章就介紹到這瞭,更多相關Python 解析 URL 參數內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python技能樹共建之python urllib 模塊
- Python爬蟲之urllib庫詳解
- Python爬蟲庫urllib的使用教程詳解
- Python網絡編程之HTTP客戶端模塊urllib與urllib3
- Python利用yarl實現輕松操作url