Web テクノロジーの継続的な発展に伴い、ブラウザに対する人々の需要もますます高まっています。ユーザーがブラウザーを介して Web サイトにアクセスすると、ブラウザーは HTTP リクエスト ヘッダーで独自の User-Agent フィールドを送信して、使用しているブラウザー情報をサーバーに伝えます。これにより、サーバーは、ブラウザーの種類やブラウザーの種類などの情報に基づいて、バージョン番号、対応するコンテンツをユーザーに返します。
ただし、クローラー、自動テスト、シミュレートされたモバイル デバイスなどのアプリケーションなど、場合によっては、ユーザー エージェント フィールドの変更が必要になる場合があります。この記事では主に、PHP で User-Agent フィールドを変更する方法を紹介します。
まず、ini_set()
関数を使用して User-Agent フィールドを変更できます。コードは次のとおりです。
ini_set('user_agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3');
ここで、User-Agent を設定します。フィールドを Chrome 58 User-Agent に追加すると、サーバーは Chrome 58 ブラウザを使用してアクセスしていると認識します。
ただし、一部の Web サイトでは特定のブラウザまたはバージョンの使用が禁止されており、通常のアクセスのために実際のユーザー エージェントをセットアップする必要がある場合があることに注意してください。
ini_set()
関数の使用に加えて、stream_context_create()
関数を使用してユーザー エージェントを設定することもできます。コードは次のとおりです。
$options = array( 'http' => array( 'user_agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3' ) ); $context = stream_context_create($options); $content = file_get_contents('http://example.com', false, $context);
ここでは、stream_context_create()
関数を使用してコンテキスト オプションの配列を作成し、User-Agent フィールドを設定します。次に、file_get_contents()
関数を使用して指定された Web ページにアクセスし、3 番目のパラメーターがコンテキスト オプション配列に渡されます。
file_get_contents()
関数に加えて、curl
ライブラリを使用して Web ページにアクセスし、ユーザー エージェントを設定することもできます。コードは次のとおりです。
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://example.com'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'); $content = curl_exec($ch); curl_close($ch);
ここでは、curl_init()
関数を使用して cURL ハンドルを作成し、curl_setopt()
関数を使用して cURL ハンドルを設定します。 URL を含む対応するオプションは、文字列形式で保存された結果とユーザー エージェント フィールドを返します。次に、curl_exec()
関数を使用して指定された Web ページにアクセスし、最後に curl_close()
関数を使用してハンドルを閉じます。
要約すると、PHP での User-Agent フィールドの変更は、ini_set()
関数、stream_context_create()
関数、および curl を通じて実現できます。 ### 図書館。ただし、Web サイトごとに User-Agent フィールドの要件が異なる場合があり、特定の状況に応じて適切な User-Agent フィールドを設定する必要があることに注意してください。
以上がPHPでUser-Agentフィールドを変更するにはどうすればよいですか?さまざまな手法の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。