PythonでCURLリクエストとPythonリクエストの相互変換を実現する方法

WBOY
リリース: 2023-05-03 12:49:13
転載
1317 人が閲覧しました

curl リクエストと Python リクエストはどちらも HTTP リクエストを送信するための強力なツールです。 curl はターミナルからリクエストを直接送信できるコマンドライン ツールですが、Python のリクエスト ライブラリは、Python コードからリクエストを送信するためのよりプログラム的な方法を提供します。

curl を Python リクエストに変換する

curl コマンドの基本構文は次のとおりです:

curl [OPTIONS] URL
ログイン後にコピー

curl コマンドを Python リクエストに変換するときは、オプションを変換する必要があります。 URL は Python コードです。

これはサンプルのcurl POSTコマンドです:

curl -X POST https://example.com/api/v1/users \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer YOUR_API_KEY' \
    -d '{"username": "john_doe", "email": "john_doe@example.com"}'
ログイン後にコピー

このcurlコマンドをPythonリクエストに変換するには、次のコードを記述します:

import requests

url = 'https://example.com/api/v1/users'
headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}
data = {
    'username': 'john_doe',
    'email': 'john_doe@example.com'
}

response = requests.post(url, headers=headers, json=data)

print(response.status_code)
print(response.json())
ログイン後にコピー

この例では、 request.post() メソッドを使用して、JSON ペイロード {"username": "john_doe", "email": "john_doe@example" を含む POST リクエストを URL https://example.com/api/v1/users に送信します。 .com」”}`。 Content-Type ヘッダーと Authorization ヘッダーも含まれます。

Python リクエストをcurlに変換する

コマンド ラインにはリクエスト ライブラリに直接相当するものがないため、Python リクエスト コードをcurl コマンドに変換するのは少し難しいです。ただし、--data または -d オプションを使用してデータをcurl コマンドに渡し、-H オプションを使用してヘッダーを設定できます。

これはサンプルの Python GET リクエスト スクリプトです:

import requests

url = 'https://example.com/api/v1/users'
headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
}
params = {
    'username': 'john_doe',
    'sort': 'name',
    'order': 'asc'
}

response = requests.get(url, headers=headers, params=params)

print(response.status_code)
print(response.json())
ログイン後にコピー

この Python リクエスト コードをcurl コマンドに変換するには、次のコマンドを使用できます:

curl -X GET 'https://example.com/api/v1/users?username=john_doe&sort=name&order=asc' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer YOUR_API_KEY'
ログイン後にコピー

この例ではでは、-X GET オプションを使用して、GET リクエストを送信し、URL とクエリ パラメーターを文字列として渡すことを指定します。 Content-Type ヘッダーと Authorization ヘッダーも含まれます。

以上がPythonでCURLリクエストとPythonリクエストの相互変換を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!