在php中抓取安全页面https

mk_*_*_89 3 php dom web-crawler

我试图抓住一个安全页面(https),如谷歌与卷曲

但我似乎没有从我的爬虫返回任何数据

php功能

function getDOM($url){
   $ch = curl_init($url);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch, CURLOPT_RANGE, '0-100');
   $content = curl_exec($ch);
   curl_close($ch);
   echo $url."<br>";

   echo $content;


   $dom = new simple_html_dom();
   $dom->load($content);

   if($dom){
      return $dom;
   }

   return null;
}

getDOM("https://www.google.co.uk/search?sugexp=chrome,mod=14&sourceid=chrome&ie=UTF-8&q=crawling%20https#hl=en&gs_nf=1&pq=site:stackoverflow.com%20crawling%20https%20php&cp=6&gs_id=s&xhr=t&q=stackoverflow&pf=p&sclient=psy-ab&oq=stacko&aq=0&aqi=g4&aql=&gs_l=&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.,cf.osb&fp=8baefeb740f734a5&biw=1280&bih=685");
Run Code Online (Sandbox Code Playgroud)

有什么我可以做爬行https,因为我似乎没有正常页面的这个问题

Jay*_*Jay 8

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
Run Code Online (Sandbox Code Playgroud)

将其添加到您的代码中.这将允许任何证书通过,因此它应该适合您的使用(但通常不是一个好主意).

  • 这将关闭SSL证书的验证.如果有人设法用(例如)您的银行切换IP,您将连接到它并获得假证书,但您的应用程序将接受它.然后,您将提供登录给坏人 (3认同)