真正的穩(wěn)定硅瞧,是自己不斷成長禁偎,不斷尋找新的空間建丧。與其要穩(wěn)定排龄,不如開始擁抱這個變化的時代,讓自己準備好翎朱。
python實踐
【寫在前面】:
我們知道接口測試時重點是接口請求參數(shù)和組合形式橄维,在之前的文章中我們提到接口請求參數(shù)的分析和自動生成,之前本人是自己寫方法來處理這些數(shù)據(jù)闭翩,后來發(fā)現(xiàn)python本身就自帶參數(shù)的拆分和組合挣郭,真是“眾里尋他千百度,驀然回首,那人卻在燈火闌珊處”迄埃。
【材料】:
參考材料 https://cuiqingcai.com/5508.html
【方法】:
1疗韵、parse_qs() #將get請求url后的參數(shù)轉(zhuǎn)換為字典
舉例如下:
from urllib.parse import parse_qs
query = 'name=germey&age=22'
print(parse_qs(query))
運行結(jié)果如下:
{'name': ['germey'], 'age': ['22']}
2、parse_qsl() #將get請求url后的參數(shù)將參數(shù)轉(zhuǎn)化為元組組成的列表
舉例如下:
from urllib.parse import parse_qsl
query = 'name=germey&age=22'
print(parse_qsl(query))
運行結(jié)果如下:
[('name', 'germey'), ('age', '22')]
3侄非、urlencode() #構(gòu)造GET請求參數(shù)
舉例如下:
from urllib.parse import urlencode
params = {
'name': 'germey',
'age': 22
}
base_url = 'http://www.baidu.com?'
url = base_url + urlencode(params)
print(url)
運行結(jié)果如下:
http://www.baidu.com?name=germey&age=22
4蕉汪、urlsplit() #拆分url
舉例如下:
from urllib.parse import urlsplit
result = urlsplit('http://www.baidu.com/index.html;user?id=5&type=test')
print(result)
運行結(jié)果如下:
SplitResult(scheme='http', netloc='www.baidu.com', path='/index.html;user', query='id=5&type=test', fragment='')
返回結(jié)果是SplitResult,它其實也是一個元組類型逞怨,既可以用屬性獲取值者疤,也可以用索引來獲取。示例如下:
print(result.query, result[0])
運行結(jié)果如下:
id=5&type=test http
5叠赦、quote() #將內(nèi)容轉(zhuǎn)化為URL編碼的格式驹马。URL中帶有中文參數(shù)時革砸,有時可能會導(dǎo)致亂碼的問題,此時用這個方法可以將中文字符轉(zhuǎn)化為URL編碼.
舉例如下:
from urllib.parse import quote
keyword = '壁紙'
url = 'https://www.baidu.com/s?wd=' + quote(keyword)
print(url)
運行結(jié)果如下:
https://www.baidu.com/s?wd=%E5%A3%81%E7%BA%B8
6糯累、unquote() #進行URL解碼
舉例如下:
from urllib.parse import unquote
url = 'https://www.baidu.com/s?wd=%E5%A3%81%E7%BA%B8'
print(unquote(url))
運行結(jié)果如下:
https://www.baidu.com/s?wd=壁紙