ホームページ > バックエンド開発 > Python チュートリアル > Python リクエストをインストールして使用する方法

Python リクエストをインストールして使用する方法

WBOY
リリース: 2023-05-18 19:49:51
転載
12758 人が閲覧しました

    1. 準備

    まず、リクエスト ライブラリがインストールされていることを確認する必要があります。インストールされていない場合は、以下の手順に従ってください。図書館をフォローしてください。

    pip のインストール

    Windows、Linux、Mac のいずれであっても、pip パッケージ管理ツールを通じてインストールできます。

    コマンド ラインで次のコマンドを実行して、リクエスト ライブラリのインストールを完了します。

    pip3 install requests
    ログイン後にコピー

    これは最も簡単なインストール方法であり、インストールにはこの方法をお勧めします。

    インストールの確認

    ライブラリが正常にインストールされたかどうかを確認するには、コマンド ラインでテストできます:

    import requests
     
    res = requests.get('https://www.baidu.com/')
     
    print(res)
    ログイン後にコピー

    上記の内容を入力します。エラー メッセージが表示されない場合は、リクエストが正常にインストールされたことを証明するだけです。

    2. サンプルの紹介

    リクエスト ライブラリは get() メソッドを使用して Web ページをリクエストします。サンプルを通して見てみましょう。

    import requests
     
    res = requests.get('https://www.baidu.com/')
     
    print(type(res))
     
    print(res)
     
    print(res.text)
     
    print(res.cookies)
    ログイン後にコピー

    ここでは、get() メソッドを呼び出してこれを実現し、応答オブジェクトを取得して、応答タイプ、ステータス コード、コンテンツ、Cookie をそれぞれ出力します。

    get() メソッドを使用してのみ get() リクエストを正常に開始できることは驚くことではありません。他にもより便利なリクエストが利用可能です。 post()、put()など。

    3.get() request

    最も一般的な HTTP リクエストの 1 つは GET リクエストです。まず、リクエストを使用して GET を構築する方法について学びましょう

    基本的な例

    まず、最も単純な get リクエストを作成します。リクエストのリンクは次のとおりです。Web サイトは、ユーザーが get リクエストを開始すると、応答リクエスト情報を返すと判断します。

    import requests
     
    res = requests.get('http://httpbin.org/get')
     
    print(res.text)
    ログイン後にコピー

    操作の結果は次のとおりです:

    {
      "args": {}, 
      "headers": {
        "Accept": "*/*", 
        "Accept-Encoding": "gzip, deflate", 
        "Host": "httpbin.org", 
        "User-Agent": "python-requests/2.27.1", 
        "X-Amzn-Trace-Id": "Root=1-637ae5d7-35da1bf57b139d152585d12a"
      }, 
      "origin": "223.215.67.113", 
      "url": "http://httpbin.org/get"
    }
    ログイン後にコピー

    get リクエストが正常に開始されたことがわかり、返された結果にはリクエスト ヘッダー、URL、IP およびその他の情報が含まれています。

    それでは、GET リクエストで追加情報を追加したい場合、一般的にはどのように追加すればよいでしょうか?たとえば、名前が Tina、年齢が 18 という 2 つのパラメータを追加したいとします。このリクエスト リンクを構築するには、直接記述できますか:

    r = requests.get('http://httpbin.org/get?name=Tina&age=18')
    ログイン後にコピー

    これも可能です。辞書を使用して構築することもできます。 params パラメータを使用するだけです。

    import requests
     
    data = {
     
        'name':'Tina',
        
        'age':'18'
        }
     
    res = requests.get('http://httpbin.org/get',params = data)
     
    print(res.text)
    ログイン後にコピー

    実行結果は次のとおりです。

    {
      "args": {
        "age": "18", 
        "name": "Tina"
      }, 
      "headers": {
        "Accept": "*/*", 
        "Accept-Encoding": "gzip, deflate", 
        "Host": "httpbin.org", 
        "User-Agent": "python-requests/2.27.1", 
        "X-Amzn-Trace-Id": "Root=1-637ae902-695483e87b26b3ad49d15df7"
      }, 
      "origin": "223.215.67.113", 
      "url": "http://httpbin.org/get?name=Tina&age=18"
    }
    ログイン後にコピー

    実行結果から判断すると、要求されたリンクは自動的にサフィックス付きのリンクになります。

    さらに、Web ページは実際には文字列型 (str) を返しますが、その形式は json() です。json を使用して辞書を返すことができます。 json 形式でない場合、json を使用するとエラーが報告され、json.decoder.JSONDecodeError 例外がスローされます。

    4.post() request

    最も基本的な get リクエストに加えて、より一般的なリクエスト メソッド post() もあります。リクエストを使用してポストリクエストを実装することも非常に簡単で、次の例のようになります。

    import requests
     
    res = requests.post('http://httpbin.org/post')
     
    print(res.text)
    ログイン後にコピー

    実行後、結果が表示されます。これは、投稿リクエストが成功したことを意味します。

    5. レスポンス

    リクエストを送信すると、必ずレスポンスが返されます。テキストに加えて、ステータス コード、応答ヘッダー、Cookie などがあります。

    requests ライブラリは、HTTP リクエストを送信し、応答を取得するために使用できます。 HTTP リクエストの送信後、サーバーから返されたすべてのデータは Response オブジェクトに含まれます。 Response オブジェクトには次の属性があります。

    status_code: サーバーの応答ステータスを示す HTTP ステータス コード。
    headers: サーバーから返されたすべてのヘッダー情報を含むディクショナリ。
    body: サーバーから返されたすべてのデータを含むバイト文字列。

    以上がPython リクエストをインストールして使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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