【发布时间】:2013-03-29 06:49:19
【问题描述】:
我正在编写一个抓取脚本。它适用于大多数网站,但我无法访问特定的 SSL 网站。
这是我的代码:
if (!extension_loaded('openssl')){
// not occurring
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.chase.com/');
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
if($result === false)
{
$err = curl_error($ch);
//$err = SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054
}
$result 始终为FALSE,并显示以下错误消息:
SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054
但它适用于其他具有 SSL 的网站。我还检查了phpinfo(),cURL 和 OpenSSL 处于活动状态。我正在使用 WAMP,有什么想法吗?
【问题讨论】:
-
你为什么要抓取银行网站?
标签: php curl openssl web-scraping