ホームページ >バックエンド開発 >PHPチュートリアル >PHP で Web スクレイピング中に 404 エラーを効果的に処理するにはどうすればよいですか?

PHP で Web スクレイピング中に 404 エラーを効果的に処理するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-03 06:48:09111ブラウズ

How to Effectively Handle 404 Errors During Web Scraping in PHP?

PHP で 404 エラーを効率的に処理する方法

Web ページをスクレイピングするときに 404 (Not Found) エラーが発生すると、コード フローが中断される可能性があります。このような中断を回避するには、最初に堅牢な URL 検証を実装することが不可欠です。

fsockopen メソッドの制限

fsockopen() を使用するというブログの提案には、特に次のような場合に制限があります。リダイレクトを扱う。有効な URL であっても、空の $valid 値を返す場合があります。

curl とcurl_getinfo() の紹介

PHP の Curl ライブラリは、リダイレクトとリターンを効果的に処理する代替アプローチを提供します。 curl_getinfo() を使用すると、cURL リクエストの実行後に HTTP ステータス コードを取得できます。以下に、curl を使用して 404 エラーをチェックするサンプル コードを示します。

$handle = curl_init($url);
curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);

/* Get the HTML or whatever is linked in $url. */
$response = curl_exec($handle);

/* Check for 404 (file not found). */
$httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
if($httpCode == 404) {
    /* Handle 404 here. */
}

curl_close($handle);

/* Handle $response here. */

このコード内:

  • cURL セッションは、curl_init() を使用して初期化されます。
  • curl_setopt() は $response を返すようにセッションを設定しますstring.
  • curl_exec() はリクエストを実行します。
  • curl_getinfo() は HTTP ステータス コード ($httpCode) を取得します。
  • $httpCode が 404 の場合、コードはerror.

この方法を利用することで、404エラーを効率的に処理できます。スクレイピング コードがスムーズに実行されることを確認します。

以上がPHP で Web スクレイピング中に 404 エラーを効果的に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。