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!

推薦閱讀: