发现您的代码由于 URL 返回 404 而遇到问题是网络抓取中的一个常见痛点。为了有效地解决这个问题,在代码开始时实施测试以验证 URL 是否有 404 响应至关重要。
虽然使用 @fsockopen() 等建议可能无法解决重定向问题,但更合适的方法是利用卷曲的curl_getinfo()函数。操作方法如下:
// Initialize a cURL handle with the given URL $handle = curl_init($url); // Enable return of transfer as a string curl_setopt($handle, CURLOPT_RETURNTRANSFER, TRUE); // Get the response (HTML or data linked to the URL) $response = curl_exec($handle); // Check for 404 (file not found) response $httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE); // Handle 404 if ($httpCode == 404) { /* Perform your custom 404 handling here. */ } // Close the curl session curl_close($handle); // Continue processing with the retrieved $response
通过合并此代码,您可以有效地检查 404 响应,从而允许您的代码跳过有问题的 URL 并继续处理可用的 URL。
以上是在网页抓取之前如何有效检查 PHP 中的 404 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!