チュートリアルのこのシリーズは、私たちは、Pythonは、私たちのツールのためできるだけ簡単にいくつかの簡単なテストツールを達成するために使用するコマンドラインベースのツール。
このチュートリアルシリーズのPythonのバージョンがある3.6.3。
背景
このセクションでは、単純なコマンドラインツールは、次のように使用し、送信要求を取得し得ます:
python get.py www.v2ex.com/api/nodes/show.json\?name\=python
接口地址: http://www.v2ex.com/api/nodes/show.json?name=python
状态码: 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 语言编程话题,也包括 Django,Tornado 等框架的讨论。这里是一个能够帮助你解决实际问题的地方。",
"footer" : null,
"created" : 1278683336,
"avatar_mini" : "//cdn.v2ex.com/navatar/8613/985e/90_mini.png?m=1531131631",
"avatar_normal" : "//cdn.v2ex.com/navatar/8613/985e/90_normal.png?m=1531131631",
"avatar_large" : "//cdn.v2ex.com/navatar/8613/985e/90_large.png?m=1531131631"
}
主な使用シナリオを迅速ステータスコード、応答ヘッダーと応答内容を表示するために、HTTP APIインターフェースにアクセスすることです。
コードの実装
簡単にするために、我々は、リクエスト・ライブラリを使用します。セットアップマニュアルここに。
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"状态码: {r.status_code}\n")
print(f"Headers:")
for key, value in r.headers.items():
print(f"{key} : {value}")
print(r.text)
アクションのための時間
- もう一度コードをコピーし、あなたが稼働して見ることができません
- コードの各行が行われたコードを理解し、コメントを追加します
- あなたは、送信要求が取得するときにデフォルトを追加する必要がある場合は
Content-Type: application/json
、ヘッダーを、コードを変更する方法、