python實(shí)現(xiàn)測(cè)試工具(一)——命令行發(fā)送get請(qǐng)求
本系列教程我們將使用python實(shí)現(xiàn)一些簡(jiǎn)單的測(cè)試工具,為了盡可能的簡(jiǎn)單,我們的工具以命令行工具為主。
本系列教程使用的python版本是3.6.3。
背景
這一節(jié)我們實(shí)現(xiàn)簡(jiǎn)單的命令行發(fā)送get請(qǐng)求的工具,使用方式如下:
python get.py www.v2ex.com/api/nodes/show.json\?name\=python
接口地址: http://www.v2ex.com/api/nodes/show.json?name=python
狀態(tài)碼: 200
Headers:
Date : Tue, 10 Jul 2018 07:06:12 GMT
Content-Type : application/json;charset=UTF-8
Transfer-Encoding : chunked
Connection : keep-alive
Vary : Accept-Encoding
X-Rate-Limit-Remaining : 119
Expires : Tue, 10 Jul 2018 08:03:49 GMT
Server : Galaxy/3.9.8.1
Etag : W/"76a33d25372411dc6fa4190a5cf9679caa0edc2a"
X-Rate-Limit-Reset : 1531209600
Cache-Control : max-age=3600
X-Rate-Limit-Limit : 120
Google : XY
Content-Encoding : gzip
Strict-Transport-Security : max-age=31536000
{
"id" : 90,
"name" : "python",
"url" : "https://www.v2ex.com/go/python",
"title" : "Python",
"title_alternative" : "Python",
"topics" : 9530,
"stars" : 6601,
"header" : "這里討論各種 Python 語(yǔ)言編程話題,也包括 Django,Tornado 等框架的討論。這里是一個(gè)能夠幫助你解決實(shí)際問(wèn)題的地方。",
"footer" : null,
"created" : 1278683336,
"avatar_mini" : "http://cdn.v2ex.com/navatar/8613/985e/90_mini.png?m=1531131631",
"avatar_normal" : "http://cdn.v2ex.com/navatar/8613/985e/90_normal.png?m=1531131631",
"avatar_large" : "http://cdn.v2ex.com/navatar/8613/985e/90_large.png?m=1531131631"
}
主要使用場(chǎng)景是快速訪問(wèn)http的api接口,查看狀態(tài)碼,響應(yīng)頭以及響應(yīng)內(nèi)容。
代碼實(shí)現(xiàn)
簡(jiǎn)單起見(jiàn),我們會(huì)用到requests庫(kù)。
import requests
from sys import argv
USAGE = '''
USAGE:
python get.py https://api.github.com
'''
if len(argv) != 2:
print(USAGE)
exit()
script_name, url = argv
if url[:4] != 'http':
url = 'http://' + url
r = requests.get(url)
print(f"接口地址: {url}\n")
print(f"狀態(tài)碼: {r.status_code}\n")
print(f"Headers:")
for key, value in r.headers.items():
print(f"{key} : {value}")
print(r.text)
動(dòng)手時(shí)間
- 抄一遍代碼,看自己能不能運(yùn)行起來(lái)
- 給這段代碼每一行都加上注釋?zhuān)斫獯a做了些什么
- 如果需要在發(fā)送get請(qǐng)求的時(shí)候默認(rèn)加上Content-Type: application/json的headers,這段代碼該如何修改
源碼地址
https://github.com/easonhan007/simple_test_tools
以上就是python實(shí)現(xiàn)測(cè)試工具(一)——命令行發(fā)送get請(qǐng)求的詳細(xì)內(nèi)容,更多關(guān)于python 命令行發(fā)送get請(qǐng)求的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- python調(diào)用ffmpeg命令行工具便捷操作視頻示例實(shí)現(xiàn)過(guò)程
- Python編程編寫(xiě)完善的命令行工具
- python命令行工具Click快速掌握
- 使用Python編寫(xiě)類(lèi)UNIX系統(tǒng)的命令行工具的教程
- Python中的命令行參數(shù)解析工具之docopt詳解
- Python命令行參數(shù)解析工具 docopt 安裝和應(yīng)用過(guò)程詳解
- 詳解Python命令行解析工具Argparse
- Python中最好用的命令行參數(shù)解析工具(argparse)
- Python fire模塊(最簡(jiǎn)化命令行生成工具)的使用教程詳解
- python開(kāi)發(fā)簡(jiǎn)單的命令行工具簡(jiǎn)介
相關(guān)文章
在python中畫(huà)正態(tài)分布圖像的實(shí)例
今天小編就為大家分享一篇在python中畫(huà)正態(tài)分布圖像的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07
利用python操作SQLite數(shù)據(jù)庫(kù)及文件操作詳解
這篇文章主要給大家介紹了關(guān)于利用python操作SQLite數(shù)據(jù)庫(kù)及文件操作的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09
python+tifffile之tiff文件讀寫(xiě)方式
今天小編就為大家分享一篇python+tifffile之tiff文件讀寫(xiě)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
Python運(yùn)行出現(xiàn)DeprecationWarning的問(wèn)題及解決
這篇文章主要介紹了Python運(yùn)行出現(xiàn)DeprecationWarning的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
python else語(yǔ)句在循環(huán)中的運(yùn)用詳解
這篇文章主要介紹了python else語(yǔ)句在循環(huán)中的運(yùn)用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07

